当我的 iPhone 应用程序退出活动状态时,UIAccelerometer 的 sharedAccelerometer 单例实例停止向我的委托发送 accelerometer:didAccelerate: 消息。
是否有可能继续接收这些消息,类似于 CLLocationManagerDelegate 在应用程序处于非活动状态时如何继续接收更新?
如果可以提供帮助,我宁愿不必完全禁用 idleTimer。
当我的 iPhone 应用程序退出活动状态时,UIAccelerometer 的 sharedAccelerometer 单例实例停止向我的委托发送 accelerometer:didAccelerate: 消息。
是否有可能继续接收这些消息,类似于 CLLocationManagerDelegate 在应用程序处于非活动状态时如何继续接收更新?
如果可以提供帮助,我宁愿不必完全禁用 idleTimer。
我想说这是可能的,因为这个应用程序在 AppStore 上:
但是,由于您在不同阶段在床上的移动方式不同,睡眠周期闹钟能够使用iPhone 中的加速度计来监控您的移动并确定您处于哪个睡眠阶段。
我不敢相信它必须在屏幕打开的情况下运行一整夜。编辑:看起来它必须!:P
所以他们也没有解决这个问题。那时你无法实现它的机会更多......
您是否阅读过 的文档,其中UIAccelerometer
是否提到了任何内容?如果它只是停止发送加速事件,那么您无能为力。
但是,当我的应用程序失去焦点时(当手机被锁定时),我会尝试再次将加速度计委托设置给我的班级。您可以从 UIApplication 获取该通知(失去焦点通知)。尝试这样做,以防加速计的委托被设置为nil
应用程序失去焦点时。
不,至少不是最新可用的 iPhone SDK 形式。