每次打开应用程序时,我都想提供一个视图控制器(用于本地身份验证,如Touch ID / Passcode)。
实现这一目标的可靠方法是什么?
我目前的做法是获取标签栏控制器的参考,并使用它来显示此视图控制器的密码/触摸ID。
但是,当显示警报控制器(警报或操作表)时,它不起作用。
有关如何实现这一目标的任何建议吗?
谢谢!
答案 0 :(得分:2)
按照以下步骤操作:
1)将一个空的viewController放入storyboard或xib。
2)将其指定为initalViewController。一旦启动画面消失,它就会出现。
3)你可以做你想做的密码/触摸ID。
4)之后,您可以使用正常的申请流程。
希望它会对你有所帮助:)。
答案 1 :(得分:0)
将LAContext与LAPolicyDeviceOwnerAuthenticationWithBiometrics一起使用。 您可以参考链接以实现密码功能。 http://www.appcoda.com/touch-id-api-ios8/
答案 2 :(得分:0)
一种方法可能是将此LocalAuthentication Controller
从AppDelegate UIApplication.shared.keyWindow.rootViewController
提供给didFinishLaunchingWithOptions
,因此当应用启动时,您将始终看到锁定屏幕,触摸ID或良好的信誉,您将清除并将tabBarController呈现在窗口
答案 3 :(得分:0)
为storyboard reference id
中的TouchId/Authentication view controller
设置storyboard
。
初始化authentication view controller
并在应用程序到达前景时显示applicationDidBecomeActive(_:)
)
func applicationDidBecomeActive(_ application: UIApplication) {
let storyboard = UIStoryboard(name: "storyboardname", bundle: nil)
let authenticationVC = storyboard(withIdentifier: "authenticationvc reference id")
UIApplication.shared.keyWindow?.rootViewController?.present(authenticationVC, animated: true, completion: nil)
//After successful authentication dismiss the view and go with normal flow.
}
答案 4 :(得分:0)
只需将身份验证屏幕设置为初始视图控制器,然后在身份验证完成后将其转到主目标网页。