如果通知中心只是像Dropbox和1Password一样显示,我如何检测用户解锁设备



我想在我的应用程序上实现一个密码屏幕。Dropbox和1Password的iPhone应用程序可以做到这一点。当你离开并回来时,它会锁定应用程序,如果应用程序处于活动状态,并且你锁定设备并解锁它,这也适用——密码屏幕将显示。

我的想法是使用applicationDidBecomeActive,但这在某些情况下会触发,比如关闭通知中心,它不应该锁定应用程序,也不应该在Dropbox或1Password中锁定。

他们是如何做到这一点的?

我相信他们实际上利用的是钥匙链服务的kSecAttrAccessible属性,在这种情况下可能是kSecAtttAccessibleWhenUnlocked,以在Dropbox和1Password中获得这种行为。

https://developer.apple.com/library/ios/documentation/Security/Reference/keychainservices/

我认为你无法直接通过应用程序代理的方法获得这些信息。你需要将你从应用程序代理中了解到的应用程序变为活动的信息与钥匙链可用的安全属性相结合。

相关内容

最新更新