iOS 程序在后台运行时希望获取到用户解锁屏幕的次数 应该如何实现。

ios开发一个功能需要获取到用户每天解锁屏幕的次数。
不知道能不能监听到解锁屏幕的事件。
或者有更好的方法可以实现。

找到的一段代码可以在后台判断屏幕时解锁或者是锁定状态,但是需要无限循环去判断。求教

static void setScreenStateCb()
{
    uint64_t locked;

    __block int token = 0;
    
    notify_register_dispatch("com.apple.springboard.lockstate",&token,dispatch_get_main_queue(),^(int t){
        
    });
    notify_get_state(token, &locked);
    
    NSLog(@"%d",(int)locked);

}
-(void)applicationDidEnterBackground:(UIApplication *)application {

    while (YES) {
    
        setScreenStateCb();
        sleep(1);
    
    }
    
}
阅读 3.4k
1 个回答
新手上路,请多包涵

楼主最后怎么解决的?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题