我在使用Google Play服务提供的GPS位置时遇到了一些问题,以及与此相关的问题。我在这里工作,我们有一个应用程序,跟踪我们城市周围的出租车的位置。很少有用户报告说,有时他们的位置会卡住,而地图视图会显示卡住的位置(以及他不再存在的位置)。在他们的设备中修复它的唯一方法是清除缓存打开应用程序。
实施后,我们按照官方教程获取设备的当前位置。获得位置后,我们将其显示在地图上并将位置坐标发送到我们的后端,记录用户设备的位置。为了分析这个bug,我们尝试了一些修复,遵循其他实现方法,甚至设置为向后端记录数据的“年龄”(当前时间 - 获得该位置的时间)。没有一种方法可以解决问题,但“年龄”确实给了我们一个暗示:虽然这个位置保持不变,但他们的年龄却在不断增长。换句话说,设备正在向后端发送相同的gps数据。通过调试,我们发现Google Play服务正在返回旧数据,而不是新数据。
我们确实找到了一种解决方法,即在1分钟卡住后重启与设备中的Google Play服务的连接。这样一来,它迫使Google Play服务重新连接,并有点“解决”卡住的位置,但同样,它不是永久修复。它有效,但很难看。
它与播放服务的连接结束了,但没有关于它的反馈,甚至为什么它首先结束。在研究它时,我们找不到任何与设备模型或特定版本的关系。
自从这个bug以来,我们在Eclipse中使用了ADT,在Google Play Services Library版本中使用了7327000。 现在,我们使用Android Studio并使用Play服务:7.5.0,仍然使用它。
这里有没有人知道可能导致它的原因,希望是一个解决方案?
提前致谢,
ViníciusHenriques