【发布时间】:2017-04-11 08:45:26
【问题描述】:
我正在开发一个需要位置更新的应用。所以我关注official tutorial 并在我的开发设备上运行该应用程序。 GPS 已激活,一切正常,但永远不会调用 onLocationChanged()。
然后我在我的个人智能手机上运行该应用程序,一切都按预期工作。所以我开始思考我的开发和我的私人设备之间的区别。我的开发手机最显着的特点是:
- 没有 SIM 卡
- 未关联任何 Google 帐户
- 没有可用的 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