我正在获取 gps 位置信息,并通过 WebView 使用 Javascript API 将其显示在谷歌地图上。我注意到位置信息不是很准确,尽管我将 EnableHighAccuracy 用作 true。我还注意到 android 中的谷歌地图应用程序能够比我的应用程序快很多倍地获取位置,并且还能够更准确地显示位置。
这怎么可能?这两个应用程序都使用 Android 上可用的 A-GPS 信息并显示在同一张 map 上。
对此有任何想法。还有任何建议我可以提高准确性。
更新:通过 Android 上的 Javascript 和 WebView 使用位置信息显示我当前的位置与我当前所在的位置至少相距 2-5 英里。然而,android 中的谷歌地图应用程序能够识别我当前所在的建筑物。 此外,谷歌地图应用程序会在 2-5 秒内获取此位置,而 webview 需要一分多钟,但仍会提供不准确的位置。
最佳答案
我认为您可能会发现 WebView
“最佳”位置算法不如 Google map 算法复杂。您看到的问题可能与 WebView
选择“最佳”位置提供程序并坚持该选择有关,即使另一个提供程序后来成为“最佳”也是如此。
如果它满足您的要求,您自己编写 LocationManager
代码并将结果发送到您的 WebView 可能会有更好的结果。通过这种方式,您可以监控多个提供程序,并可以根据为您的应用程序提供最佳新近度/准确性权衡的提供程序在它们之间切换。
这里有一个关于复杂定位算法入门的好指南:http://developer.android.com/guide/topics/location/strategies.html
关于android - Android 应用程序上的 GPS 位置信息冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11456642/