0

强制停止应用程序后是否可以在 android 应用程序中获取位置更新。在 IOS 中,如果我们强制停止应用程序,则可以获取位置更新,类似的方式是否有任何服务可以为 android 中的已终止应用程序提供位置更新。

4

2 回答 2

1

不,这是不可能的,因为应用程序的进程已被终止,并且注册的位置侦听器已被删除。系统也不知道应该由谁来提供位置更新。如果用户强制停止和应用程序,无论如何这意味着应用程序应该停止它正在做的事情。但是,如果应用程序由于内存压力低而被终止,那么这就是使用 STICKY 服务会派上用场的地方。只需在位置服务中注册位置更新,然后在 onStartCommmand 中返回 START_STICKY 常量以向系统指示如果服务被终止(不是强制停止),那么系统应该在内存压力下降时重新启动服务。

于 2018-01-17T15:39:43.347 回答
0

是的,如果您使用BroadcastReceiver注册了一些地理围栏,应用程序可以自行重启。每当设备进入/离开 Geofence 应用程序时,都会通过 BroadcastReceiver 接收回调,在此回调中,您可以重新安排位置更新侦听器。

但如果没有地理围栏,位置更新不会提供给强制关闭的应用程序。

在这里,您可以了解有关如何监控地理围栏的基础知识。

于 2018-01-19T01:10:25.240 回答