我构建了一个iOS应用程序,我希望有一些登录屏幕,所以只有知道密码的人才能使用它。
它实际上不必同时具有用户名和密码。只有一个特殊的代码就足够了(密码)。安装应用程序后,将立即键入此密码,用户每次打开应用程序时都不需要输入密码。
这样做的最佳做法是什么?
当第一个用户输入密码时,您可以使用app bundle key将其存储在钥匙串中,并在应用程序的每次打开时读取它以检查它是否存在(用户存在导航到主屏幕)或nil(显示登录屏幕)
我要做的就是只使用一个文本字段,无论它是否安全都无关紧要,无论最适合你。
一旦用户正确输入了代码,您就可以在UserDefaults中存储一个bool来表示用户已登录:
UserDefaults.standard.set(true, forKey: "UserLogged")
每次应用程序打开时,您都会检查此bool,以了解是否显示登录信息。这个检查可以在AppDelegate中完成:
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
if UserDefaults.standard.bool(forKey: "UserLogged") == false {
showLogin()
} else {
showMainScreen()
}
return true
}
希望这可以帮助