у меня есть текстовое поле,
Число и пароль
у меня нет подсказки, как сохранить эти настройки и затем считать их, поскольку приложение начинает проверять, были ли они установлены или нет.
Спасибо
Масон
Для сохранения:
[[NSUserDefaults standardUserDefaults] setValue:_email forKey:@"email"];
[[NSUserDefaults standardUserDefaults] setValue:_password forKey:@"password"];
[[NSUserDefaults standardUserDefaults] synchronize];
Для чтения:
_email = [[NSUserDefaults standardUserDefaults] stringForKey:@"email"];
_password = [[NSUserDefaults standardUserDefaults] stringForKey:@"password"];
В вашем случае:
[[NSUserDefaults standardUserDefaults] setValue:Number.text forKey:@"Number"];
И:
NSString * number = [[NSUserDefaults standardUserDefaults] stringForKey:@"Number"];
«Ключ» обычно жестко запрограммирован и работает как «имя переменной» для вещей в хранилище (обычно пары имя / значение как словарь).
Чтобы проверить, установлено ли значение или нет; после прочтения:
if (number) ...
Конфиденциальная информация должна храниться в цепочке для ключей, криптографически безопасном месте на устройстве. Если вы сохраните имя пользователя и / или пароль в NSUserDefaults
, вы сохраните их как открытый текст, что по своей сути небезопасно.
В Интернете есть множество примеров использования связки ключей на iPhone, включая простые оболочки для использования в вашем коде. Например, вот неплохой код на Github, который упрощает задачу:
http://github.com/ldandersen/scifihifi-iphone/tree/master/security