Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于获取gps位置更新的Android服务_Android_Android Studio_Service - Fatal编程技术网

用于获取gps位置更新的Android服务

用于获取gps位置更新的Android服务,android,android-studio,service,Android,Android Studio,Service,过去几周我一直在使用gps,并成功创建了一个工作服务,提供位置更新,并按计划将其发送到服务器。但仍然存在一些问题 有关该服务的更多信息: 该服务是从 1) 活动 2) 启动过程完成时 3) 即使gps状态改变(即启用或禁用) 为此,我创建了一个BroadcastReceiver 现在,这种结构的问题是: 首次安装后,gps未启用,且应用程序正在运行。这是我第一次开始服务。因此,在开始服务后,它可以正常工作。现在,如果我按home按钮并从最近的活动托盘中删除应用程序,即使下一次位置更新的间隔未完成

过去几周我一直在使用gps,并成功创建了一个工作服务,提供位置更新,并按计划将其发送到服务器。但仍然存在一些问题

有关该服务的更多信息: 该服务是从 1) 活动 2) 启动过程完成时 3) 即使gps状态改变(即启用或禁用)

为此,我创建了一个
BroadcastReceiver

现在,这种结构的问题是: 首次安装后,gps未启用,且应用程序正在运行。这是我第一次开始服务。因此,在开始服务后,它可以正常工作。现在,如果我按home按钮并从最近的活动托盘中删除应用程序,即使下一次位置更新的间隔未完成,服务也会提供位置更新(位置更新间隔由LocationManager实例设置,时间为1000毫秒,距离为300米)

其余时间,当应用程序gps状态发生更改或执行重新启动时,服务将按预期工作

那么,当应用程序从最近的活动托盘中移除时,到底发生了什么,以及为什么即使更新间隔没有完成,GPS也会给出更新

该服务没有绑定,它是使用服务扩展的,而不是使用IntentService,并使用语句START_STICKY添加的;因为我希望该服务能够连续运行


谢谢!

当您从系统托盘中删除应用程序时,您需要多长时间才能获得更新?我需要再次启动应用程序。。。。