0

有谁知道是否有一个 xcode 解锁事件可以跟踪是否有人解锁了他的 iPhone?

还是只有越狱设备才有可能?

提前致谢。

4

1 回答 1

1

是的,您可以在未越狱的设备上使用CFNotificationCenterAddObserver.

为达尔文通知“lockstate”添加一个观察者:

CFNotificationCenterAddObserver(CFNotificationCenterGetDarwinNotifyCenter(), 
                            NULL, 
                            lockStateDidNotify, 
                            CFSTR("com.apple.springboard.lockstate"),
                            NULL, 
                            CFNotificationSuspensionBehaviorDeliverImmediately);

每次设备锁定/解锁时都会通知您:

static void lockStateDidNotify(CFNotificationCenterRef center, void *observer, CFStringRef name, const void *object, CFDictionaryRef userInfo) 
{
    NSLog(@"The Device Locked/Unlocked");
}

由于这会同时触发锁定和解锁,因此它并不完全是您想要的,但您可以观察com.apple.springboard.lockcomplete在锁定期间触发)并检查是否同时获得两者。如果你没有得到,lockcomplete你可以假设解锁刚刚发生。

于 2013-10-04T11:57:56.260 回答