获取谷歌播放服务与没有谷歌播放服务的坐标

时间:2014-04-17 10:27:37

标签: android google-maps geolocation google-play-services

我正在尝试获取当前的设备位置,但有时它无法获得它。但是,我很惊讶谷歌地图可以得到它。

所以我写了一个程序来使用LocationClient(使用google-play-service)而不是LocationManager(没有google-play-service)。

如所怀疑的,LocationClient对象可以比LocationManager更好地执行。但为什么?是不是都从手机的硬件得到了结果?

我尝试反编译google-play-service以进一步了解,但遗憾的是有些代码无法反编译。

最终,我试图创建一个程序,它不依赖于谷歌播放服务,但仍然可以像谷歌地图一样获得坐标。

希望你们能帮助我。非常感谢!!!

此致 德克斯特

2 个答案:

答案 0 :(得分:1)

去年你有没有看到Google IO“Android位置的新功能”? https://developers.google.com/events/io/sessions/325337477

LocationClient(使用google-play-service)可帮助您制作新一代的“内容相关应用”。这个api使用蓝牙,加速度计,gps,wifi等。基本上这个api更适合在室内跟踪,但也可以在外面工作。我们无法知道它是如何工作的,因为谷歌不想开源:(

答案 1 :(得分:0)

除了作为提供商的GPS之外,位置在每种情况下都不完全取决于设备的硬件。它永远不会完全独立于设备硬件,但存在差异。

使用LocationManager时,您需要指定PROVIDER [如GPS,网络或被动]以获取Location
这部分在很大程度上取决于设备硬件。

到目前为止,我们正在谈论源和经理的android.location包。

现在使用Google Play服务SDK访问Location APIs 这里重要的部分是他们所说的获取位置的来源:
融合位置提供商

  

融合位置提供商智能地管理底层证券   定位技术,根据您的需求为您提供最佳位置   需要。

因此,当我们使用LocationClientLocationRequest结合使用时,我们可以指定所需的准确度级别。这不会高度依赖于设备的硬件,而是更多地取决于我们指定的准确度 除了我认为PRIORITY_HIGH_ACCURACY的情况,这取决于设备中GPS硬件/接收器的质量。

就地图而言,如果您需要最准确的位置,如果没有Google Play服务,只有我认为才能从GPS_PROVIDER获得。