android 传感器休眠的问题

在一些情况下我们会需要调用android的api的使用传感器,acceleration , orientation,gyroscope, 但一般会遇到这样的一个问题,当屏幕暗屏的情况下,会无法获取传感器的读书(暗屏之后过一段时间会休眠)

通过查询发现 wake_lock可以解决这个问题,他可以让cpu在暗屏情况下不休眠,但又由于对wake_lock使用不当,我 误以为传感器的休眠和cpu的休眠时不一样的(好像也说的通),  但后来差了一点资料 大多传感器都是物理装置。。。哪来休眠的说法啊,一些逻辑传感器也是通过物理传感器变化而来的,方向传感器来自磁力传感器。


在经过试验之后,发现了wake_lock 的准确适用方法,  例如你 记录传感器的参数的代码写在 service中(这种功能一般都放在后台),把acquire()放在oncreate()中, release()放在 onDestory()中就行了, 这样即便你暗屏且你的这个应用不在最前端(手机屏幕上),你仍然可以后去读数, (不要把wake_lock的acquire(),release()放在activity中.)括号中的这句话之前表述有误。


WakeLock的设置是 Activiy 级别的,不是针对整个Application应用的。可以在activity的onResume方法里面操作WakeLock,  在onPause方法里面释放。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值