【问题标题】:Device doesn't receive location updates设备未收到位置更新
【发布时间】:2017-04-11 08:45:26
【问题描述】:

我正在开发一个需要位置更新的应用。所以我关注official tutorial 并在我的开发设备上运行该应用程序。 GPS 已激活,一切正常,但永远不会调用 onLocationChanged()。
然后我在我的个人智能手机上运行该应用程序,一切都按预期工作。所以我开始思考我的开发和我的私人设备之间的区别。我的开发手机最显着的特点是:

  1. 没有 SIM 卡
  2. 未关联任何 Google 帐户
  3. 没有可用的 WiFi => 没有互联网连接

3 号已经迫使我从镜像下载最新的 Google Play 服务 apk 并手动安装。我还需要做些什么来让我的开发手机使用定位服务吗?

我的开发设备的规格:
三星 Galaxy S7
安卓 7.0
Google Play 服务 10.2.99


编辑
正如@EugenPechanec 所指出的,依靠GPS 只需要一个GPS 连接,所以在户外真的很有帮助。打开我私人手机的飞行模式并仅激活 GPS 导致我得到与开发设备相同的结果。把它放在窗边让我有了它的 1/3 次和开发设备的 0/3 次。所以这看起来很合法。非常感谢关于 GPS 的提醒 ;)

【问题讨论】:

  • 您如何在未关联 Google 帐户的情况下使用 Google Play 服务?
  • @AlexTa 我通过镜像 apk 安装了它,然后按照教程说明在代码中使用它。据我了解,定位服务是手机中 GPS 硬件的接口,不需要互联网连接。所以不需要连接到谷歌服务器。但也许我错了?
  • @AlexTa Play 服务实际上不需要帐户。您只需要一个帐户即可访问 Play 商店并获得最新的 Play 服务。第 22 条规定。如果您侧载了最新的 Play 服务 APK,这与您无关。
  • @EarlGrey 在您的情况下,只有 GPS 是可行的位置信息来源。问题是 GPS 只能在户外使用。

标签: android google-play-services google-location-services


【解决方案1】:

配备 GPS 的 Android 设备会检查网络连接是否可用。如果是这样,他们会从 A-GPS 服务器下载数据并使用它来更正 GPS 芯片的位置。如果没有,GPS芯片必须从GPS卫星上下载数据,速度很慢,需要很长时间,速度大约是每秒50比特。也许您的开发设备需要很长时间才能更新位置。

【讨论】:

    【解决方案2】:

    我在使用三星 Galaxy S7 时遇到了同样的问题,尝试使用 SIM 卡和不使用 SIM 卡,但问题仍然存在,所以当我遇到问题时打开谷歌地图,它显示更改提供商以获得更好的准确性(高精度)。更改提供商后它完美地工作。我们可以像谷歌地图一样关注同样的事情

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-10-03
      • 1970-01-01
      • 1970-01-01
      • 2012-05-04
      • 1970-01-01
      • 2018-03-18
      • 1970-01-01
      相关资源
      最近更新 更多