protectedDataAvailable 始终为真
protectedDataAvailable always true
据我了解,UIApplication.sharedApplication().protectedDataAvailable 应该 return false 当 phone 被锁定并且在 iPhone 上启用了受保护的数据(显然设置密码启用它)。
然而,尽管有这种情况,它总是 return 正确。
一旦我的应用程序由于 Corebluetooth 状态保存和恢复而被 iOS 重新唤醒,我需要立即知道 phone 是否被锁定。
我实现了事件侦听器以了解 phone 何时获得 locked/unlocked,但它们仅在锁定状态更改后才有用,我无法在事件发生之前确定锁定状态.
有什么想法吗?谢谢
更新:
这是我在 applicationDidFinishLaunchingWithOptions 中使用的:
self.phoneLockDetection.isPhoneLocked = !UIApplication.sharedApplication().protectedDataAvailable
不在“查看设备日志”下 -- 您将在此处查看故障转储。
在 Xcode > Window > 设备 > 你的设备上有一个设备控制台。它可能已折叠 -- 如果是,请单击右侧窗格左下角的三角形按钮。
我在控制台日志中看到以下内容:
Nov 14 12:07:30 Ewan-Mellors-iPad SpringBoard[54] <Warning>: [MPUSystemMediaControls] Disabling lock screen media controls updates for screen turning off.
Nov 14 12:07:30 Ewan-Mellors-iPad UserEventAgent[775] <Error>: LockStateNotifier aksNotificationCallback posting notification: com.apple.mobile.keybagd.lock_status
Nov 14 12:07:30 Ewan-Mellors-iPad UserEventAgent[775] <Notice>: (Note ) PIH: Lock status changed.
Nov 14 12:07:30 Ewan-Mellors-iPad MobileMail[192] <Warning>: Key bag transitioning from unlocked to locking
十秒后:
Nov 14 12:07:40 Ewan-Mellors-iPad kernel[0] <Notice>: AppleKeyStore:Sending lock change 1 for handle 0
Nov 14 12:07:40 Ewan-Mellors-iPad UserEventAgent[775] <Error>: LockStateNotifier aksNotificationCallback posting notification: com.apple.mobile.keybagd.lock_status
Nov 14 12:07:40 Ewan-Mellors-iPad UserEventAgent[775] <Notice>: (Note ) PIH: Lock status changed.
Nov 14 12:07:40 Ewan-Mellors-iPad MobileMail[192] <Warning>: Key bag transitioning from locking to locked
据我了解,UIApplication.sharedApplication().protectedDataAvailable 应该 return false 当 phone 被锁定并且在 iPhone 上启用了受保护的数据(显然设置密码启用它)。
然而,尽管有这种情况,它总是 return 正确。
一旦我的应用程序由于 Corebluetooth 状态保存和恢复而被 iOS 重新唤醒,我需要立即知道 phone 是否被锁定。
我实现了事件侦听器以了解 phone 何时获得 locked/unlocked,但它们仅在锁定状态更改后才有用,我无法在事件发生之前确定锁定状态.
有什么想法吗?谢谢
更新:
这是我在 applicationDidFinishLaunchingWithOptions 中使用的:
self.phoneLockDetection.isPhoneLocked = !UIApplication.sharedApplication().protectedDataAvailable
不在“查看设备日志”下 -- 您将在此处查看故障转储。
在 Xcode > Window > 设备 > 你的设备上有一个设备控制台。它可能已折叠 -- 如果是,请单击右侧窗格左下角的三角形按钮。
我在控制台日志中看到以下内容:
Nov 14 12:07:30 Ewan-Mellors-iPad SpringBoard[54] <Warning>: [MPUSystemMediaControls] Disabling lock screen media controls updates for screen turning off.
Nov 14 12:07:30 Ewan-Mellors-iPad UserEventAgent[775] <Error>: LockStateNotifier aksNotificationCallback posting notification: com.apple.mobile.keybagd.lock_status
Nov 14 12:07:30 Ewan-Mellors-iPad UserEventAgent[775] <Notice>: (Note ) PIH: Lock status changed.
Nov 14 12:07:30 Ewan-Mellors-iPad MobileMail[192] <Warning>: Key bag transitioning from unlocked to locking
十秒后:
Nov 14 12:07:40 Ewan-Mellors-iPad kernel[0] <Notice>: AppleKeyStore:Sending lock change 1 for handle 0
Nov 14 12:07:40 Ewan-Mellors-iPad UserEventAgent[775] <Error>: LockStateNotifier aksNotificationCallback posting notification: com.apple.mobile.keybagd.lock_status
Nov 14 12:07:40 Ewan-Mellors-iPad UserEventAgent[775] <Notice>: (Note ) PIH: Lock status changed.
Nov 14 12:07:40 Ewan-Mellors-iPad MobileMail[192] <Warning>: Key bag transitioning from locking to locked