Issue1: запрос имени пользователя и пароля
Представить вид модально. если комбинация имени пользователя и пароля верна, отклоните модальное представление. Кроме того, вы можете использовать предупреждение с текстовыми полями.
Issue2: безопасное хранение имени пользователя и пароля
Используйте цепочку для ключей, как предложено в другом ответе. Использование цепочки ключей так же просто, как использование NSUserDefaults с PDKeychainBindingsController от Carlbrown. Вы можете найти его по ссылке ниже
https://github.com/carlbrown/PDKeychainBindingsController
ИЗМЕНЕНО, чтобы добавить информацию, запрошенную в комментарии:
Предполагая, что вы используете настраиваемый контроллер представления для запроса входа в систему, вы должны сделать что-то подобное, когда вы хотите запросить пароль. это может быть в вашем приложении didFinishLaunchingWithOptions.
LoginViewController *controller = [LoginViewController alloc];
[self presentModalViewController:controller animated:YES];
[controller release];
Затем в вашем LoginViewController вы должны сделать что-то вроде этого.
PDKeychainBindings *keyChain =[PDKeychainBindings sharedKeychainBindings];
if ([[keyChain objectForKey:@"User Name"] isEqualToString:userName] && [[keyChain objectForKey:@"Password"] isEqualToString:passWord] ) {
[self dismissModalViewControllerAnimated:YES];
}else {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"ERROR" message:@"Wrong User Name and/or Password\nEnter Login Information Again"
delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
[alert show];
[alert release];
}
Обратите внимание, что строки userName и PassWord записываются из ваших текстовых полей в контроллере представления входа в систему.