关闭应用程序后,LocationUpdatesForegroundService 应用程序进程仍在运行
Posted
技术标签:
【中文标题】关闭应用程序后,LocationUpdatesForegroundService 应用程序进程仍在运行【英文标题】:LocationUpdatesForegroundService app process is still running after closing app 【发布时间】:2020-01-03 16:57:19 【问题描述】:我正在对 Google Play 定位服务进行一些调查 Google Play Location Samples
我在 LocationUpdatesForegroundService 示例应用程序上尝试以下问题:关闭应用程序后应用程序进程仍在运行。
重现它的步骤:
打开应用 按“请求位置更新”按钮 按下设备主页按钮以在后台发送应用程序 关闭应用我的期望是应用程序进程(及其所有线程)必须停止,但事实并非如此。
关闭应用后应用进程仍在运行
当我在调用后关闭应用程序时会发生这种情况
startForeground(NOTIFICATION_ID, getNotification());
如何避免?
它看起来与用于收集位置的前台服务有关。 应用关闭时如何停止服务?
【问题讨论】:
因为即使应用程序在 android 中关闭,服务仍在后台继续运行。更多详情developer.android.com/guide/components/services 我该如何阻止它?应用关闭时怎么办? 在服务中使用 android:stopWithTask="true"。 现在可以正常使用了,谢谢 【参考方案1】:根据documentation,Service
是 Android 组件,即使应用程序关闭,它也会在后台继续运行。
如果您想在应用程序从最近的任务中删除时停止服务(即应用程序终止),您必须在AndroidMenifest.xml
中使用android:stopWithTask="true"
来显式关闭服务。
例子,
<service
android:name=".LocationUpdatesForegroundService"
android:stopWithTask="true" />
【讨论】:
以上是关于关闭应用程序后,LocationUpdatesForegroundService 应用程序进程仍在运行的主要内容,如果未能解决你的问题,请参考以下文章