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被调用时.

相关文章

背景 前端时间产品经理决定使用百度统计,使得 工程B 中原统计sdk-友盟统计,需要被去除。之前尝试去除...
结论: alloc负责分配内存和创建对象对应的isa指针; init只是返回alloc生成的对象。 所以alloc后,多次...
更新 如果UI愿意把启动图切割成n份,按一定约束在launchscreen.storyboard中进行排版,启动图效果会更好...
最近在看一本书《Effective OC 2.0》,今天看到有个tip是OC适中循环各自优劣性,作者最终推荐此块循环。...
// // ViewController.m // paintCodeTestOC //gif // Created by LongMa on 2019/7/25. // #import &a...
背景介绍 一般情况下,出于省电、权限、合理性等因素考虑,给人的感觉是很多奇怪的需求安卓可以实现,但...