在后台安卓应用关机,如何停止?

时间:2017-10-16 09:55:29

标签: android background-process lifecycle shutdown application-shutdown

我开发了一款用于GPS追踪的繁忙应用。它在前景中运行良好。它使用GPS /位置回调以及文本到语音,消息和心率监视器硬件的后台服务。问题是Android OS在后台运行时偶尔会关闭它。如果使用POWER按钮关闭屏幕,它会一直运行正常。如果使用HOME按钮关闭屏幕并运行其他应用程序,Android有时会在几分钟后关闭应用程序,即使它需要继续工作。有没有办法让应用程序运行使用isFinishing()/ onDestroy()或类似的?正确捕获BACK按钮操作,为用户提供取消选项。谢谢,克里斯。

1 个答案:

答案 0 :(得分:2)

为避免这种情况,您的应用应启动前台服务(调用startForeground()的服务),显示不可解雇的通知并获取PowerManager.PARTIAL_WAKE_LOCK

它可以防止手机进入睡眠模式并阻止系统查杀您的应用程序(100%无法避免),但这显然会对电池消耗产生重大影响。