iOS Today Widget Extension:检测是否在锁定屏幕中打开

时间:2014-11-06 01:55:58

标签: ios iphone widget ios8-today-widget

无论如何都要看用户是否从锁定屏幕激活了通知中心?我在一个小部件中有一些私人信息,如果iPhone仍处于锁定状态,我想隐藏它。

1 个答案:

答案 0 :(得分:3)

有点hacky,但这就是我的方式:

1)当您的应用首次启动时,在共享容器中创建一个虚拟文件,并将其NSFileProtectionKey属性设置为NSFileProtectionComplete。我们称之为ProtectionMonitor.dummy

2)当您的小部件启动时,尝试从该文件中获取数据。如果失败,则设备被锁定。

3)监控UIApplicationProtectedDataDidBecomeAvailable和 扩展程序中的UIApplicationProtectedDataWillBecomeUnavailable通知:用户可以在显示通知中心时使用触摸ID解锁设备。您甚至可以向用户建议触摸ID,以便在从锁定屏幕访问时从您的窗口小部件访问私人数据。