ios – TouchID调用applicationWillResignActive和applicationDidBecomeActive

前端之家收集整理的这篇文章主要介绍了ios – TouchID调用applicationWillResignActive和applicationDidBecomeActive前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想知道Apple是否打算使用TouchID功能调用这些生命周期方法.

是否有可能检查touchID进程是否正在调用这些方法(我想避免像应用程序委托中的BOOL那样,如果当前显示了touchID输入,则设置该对象.)

BR

解决方法

猜测您遇到的问题是您在applicationWillResignActive和applicationDidBecomeActive中有代码,这些代码会影响视图控制器,该控制器请求触摸ID验证,并确定它是一个棘手的循环.

您需要做的是将这些调用移到applicationDidEnterBackground和applicationWillEnterForeground,因为调用Touch ID机制时不会调用它们.

要解释序列,当您的应用程序启动时执行以下序列:

> applicationDidBecomeActive
>你的应用程序的其他东西
>您的应用程序会调用触摸ID,触发ID:
> applicationWillResignActive

… Your app is disabled until the user verifies fingerprint (fails or
succeeds) …

> applicationDidBecomeActive

如果您在applicationDidBecomeActive -or- applicationWillResignActive中存在影响Touch ID的代码,那么您将创建一个无休止的循环,或者更糟糕的是,您将创建一个充满标志和特殊情况的代码.

而应该在两种情况下调用Touch ID:

>当您的应用程序启动时(通常在didFinishLaunchingWithOptions中)>当您的应用程序的applicationWillEnterForeground被调用时.

猜你在找的iOS相关文章