"killed"后在后台运行安卓应用



我正在开发一个用于移动传感器监控(加速度计、陀螺仪等)的Android应用程序。该应用程序构建在一个从BroadCastReceiver扩展的类上,并与一个服务(一个从service扩展的类)进行通信,该服务负责在发生某些android事件时记录传感器数据。当应用程序在后台运行时,效果很好,直到我终止活动(在这个活动中,用户可以调整一些参数)。我想在应用程序被杀后继续录制,如何修复?谢谢

我认为您忘记了将服务添加到应用程序中,您需要从活动中启动服务,然后向IntentFilter注册broadcastreciver,之后您的应用程序将永远不会停止。您可能会对这个答案感兴趣

您可以使用这两个框架来安排您的服务在您想要的时间启动。像每小时左右

http://developer.android.com/reference/android/app/job/JobScheduler.htmlhttp://developer.android.com/reference/android/app/AlarmManager.html

但请记住,如果有人去找任务经理并扼杀你的流程,那是不可能避免的。

欢呼

通过返回START_STICKY(服务的onstartcommand())和服务内部的PowerManager解决,以防止Android CPU进入睡眠状态。感谢大家!!

相关内容

最新更新