关闭应用程序后,LocationUpdatesForegroundService应用程序进程仍在运行

时间:2019-08-30 12:23:54

标签: java android foreground-service android-fusedlocation

我正在对Google Play定位服务进行调查 Google Play Location Samples

我正在LocationUpdatesForegroundService示例应用程序上尝试以下问题:关闭应用程序后,该应用程序进程仍在运行。

重现它的步骤:

  • 打开应用
  • 按“请求位置更新”按钮
  • 按下设备主页按钮可在后台发送应用程序
  • 关闭应用程序

我的期望是必须停止应用程序进程(及其所有线程),但不必停止。

关闭应用程序后,应用程序进程仍在运行

调用

后关闭应用程序会发生这种情况
startForeground(NOTIFICATION_ID, getNotification());

如何避免呢?

它看起来与用于收集位置的前台服务有关。 在应用程序关闭时如何停止服务?

1 个答案:

答案 0 :(得分:1)

根据documentationService是Android组件,即使该应用已关闭,该组件也会在后台继续运行。

如果您要在从最近的任务中删除应用程序(即应用程序终止)时停止服务,则必须使用android:stopWithTask="true"中的AndroidMenifest.xml来明确关闭该服务。

示例

<service
        android:name=".LocationUpdatesForegroundService"
        android:stopWithTask="true" />