我正在使用cocos2d制作基于加速度计的应用程序,我注意到可以设置加速度计更新间隔。
[[UIAccelerometer sharedAccelerometer] setUpdateInterval: (1.0f / 60.0f)];
像这样(每秒60次)非常频繁地更新加速度计会导致电池耗尽吗?
答案 0 :(得分:15)
鉴于接受答案中的数字,实际加速度计的功率使用是微不足道的。你真正的打击将来自你的应用程序必须处理事件,从而使CPU不能更频繁地睡眠。
3GS的电池电量为4.51瓦时。在100赫兹运行时仅从加速度计中排出会在(大约)6000小时内消耗电池(假设0.75 mW值是正确的)
(此外,iPhone 4的电池电量为5.25瓦时,4S 5.3 Whr和5 5.45 Whr,如果您感到好奇的话)
答案 1 :(得分:9)
根据LIS302DL加速度计数据表,它在100Hz的更新速率下消耗~0.75 mW的功率,在待机模式下消耗0.0025 mW的功率(即没有读数)。 / p>
所以,简短的回答是“是的”,但是我不能把这些数字放在一边,让你知道,比如说,“它按时分多少分钟”。电池。
我的建议是做一些测试。找到提供满意结果的最低更新率。
答案 2 :(得分:2)
来自Event Handling Guide for iPhone OS:
配置更新间隔时 对于加速事件,最好是 选择最小化的区间 交付的活动数量仍然是 满足您的应用需求。 很少有应用需要加速 事件每秒发送100次。 使用较低的频率可以防止你的 经常运行的应用程序 因此可以延长电池寿命。
根据这一点,具有高更新频率的更昂贵的部分可能是您的应用程序必须处理每个加速度计事件,而不是闲置更长时间。
另外,来自iPhone Application Programming Guide:
如果您使用UIAccelerometer类 接收常规加速度计 事件,禁用那些交付 你不需要它们的事件。 同样,设置事件的频率 交付到最小的价值 适合您的需求。
答案 3 :(得分:1)