是否有一个Android sharedpreferences相当于iOS中保存凭据(用户名和密码)?

2019-10-29 21:18发布

Android开发未来我使用SharedPreferences存储用户名和密码登录到使用OutputStreamWriterHttpURLConnection的服务器。 现在iOS中我使用NSMutableURLRequest发送用户名和密码。 有什么在iOS中存储像iOS的 SharedPreferences的用户名和密码? 采取记住,这是所以它需要是安全的敏感数据。

Answer 1:

就在这里。 用户名和密码应使用Keychain.Keychain默认情况下,加密的苹果被保存。 https://developer.apple.com/library/ios/documentation/Security/Conceptual/keychainServConcepts/iPhoneTasks/iPhoneTasks.html

另外,看看这个教程对如何在iOS中使用钥匙扣。 http://maniacdev.com/2011/07/tutorial-how-to-use-the-ios-keychain-to-store-names-and-passwords

要保存其他用户的喜好,使用NSUserDefaults的。



Answer 2:

Android的SharedPreferences的对手是NSUserDefaults的IOS。 在你的情况我建议你使用钥匙扣这就是保护您的数据

如果你正在向iOS开发我强烈建议使用的CocoaPods

使用它,我已经找到了一个框架,使简单的工作与钥匙串SSKeychain



Answer 3:

NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];
[defaults setObject:self.numbers forKey:@"userName"];
[defaults synchronize];

U可以使用NSUserDefault在iOS上的用户名密码存储为Android这样SharedPreference 。 如果您想为用户名密码加密更安全,然后存储起来。

NSString *userName=[defaults ObjectforKey:@"userName"];

这将retrive价值。

在存储值NsUserDefault会被你的应用程序只而不是在监狱里破iOS设备的情况下访问



Answer 4:

你不把它们存储在共享偏好,而是使用钥匙串,这是加密

KeychainItemWrapper* keychain = [[KeychainItemWrapper alloc] initWithIdentifier:@"KeychainTest" accessGroup:nil];
[keychain setObject:(__bridge id)kSecAttrAccessibleWhenUnlocked forKey:(__bridge id)kSecAttrAccessible];

NSLog(@"%@, %@", [keychain objectForKey:(__bridge id)kSecAttrAccount], [keychain objectForKey:(__bridge id)kSecValueData]);

[keychain setObject:@"example@email.com" forKey:(__bridge id)kSecAttrAccount];
[keychain setObject:@"MySuperSecretPassword" forKey:(__bridge id)kSecValueData];

NSLog(@"%@, %@", [keychain objectForKey:(__bridge id)kSecAttrAccount], [keychain objectForKey:(__bridge id)kSecValueData]);

https://developer.apple.com/library/ios/samplecode/GenericKeychain/Introduction/Intro.html (该KeychainItemWrapper需要-fno-objc弧,因为它不是专为ARC)

http://b2cloud.com.au/how-to-guides/using-the-keychain-to-store-passwords-on-ios



文章来源: Is there an Android sharedpreferences equivalent in iOS to save credentials (Username and Password)?