为什么我不能有一个扩展BroadcastReceiver并实现SensorEventListener的类?该类接收在我的应用程序中设置的警报意图。
我有一个在实现的onSensorChanged方法中设置的类实例变量。在onReceive方法中,我注册了监听器,有一个运行的while循环,直到设置了类实例变量。在循环之后,我取消注册监听器。但是变量从未设置,循环继续运行。
根据答案,我不应该在广播接收器中注册听众:
BroadcastReceiver with a Listener drains battery when not in use
在AlarmManager文档中,有关于设备睡眠的所有这些警告,但就我而言,它永远不会睡觉。
答案 0 :(得分:0)
根据这篇文章:
AlarmManager and BroadcastReceiver instead of Service - is that bad ? (Timeout)
onReceive方法在主应用程序线程上运行,不能做很多工作或超时。我可以通过将工作负载转移到IntentService来解决我的问题。