为了工作,我的应用需要一个位置API.我打算使用Mapbox平台来定制它的设计(因为就我而言,谷歌地图不提供这种级别的定制).
文档说我们应该在构建位置应用时使用Google Play API:
Google Play服务位置API优先于Android框架位置API(android.location),作为向您的应用添加位置感知的一种方式.如果您当前正在使用Android框架位置API,强烈建议您尽快切换到Google Play服务位置API.
我的问题是:在GPS准确性方面,Google Play API是最有效的API吗?或者我应该使用LocationManager和LocationListener的方式吗?
我需要准确性.我应该使用哪一个?谢谢.
Dha*_*hah 11
在android中也有三种类型的位置:
所以,根据我的编码经验,我开始知道如果你使用:
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 5000, 10, new MyLocationListener());
Run Code Online (Sandbox Code Playgroud)
你将获得精确到14位以上的小数位数.
但如果你像这样使用它们的融合:
LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest, my_google_listener);
Run Code Online (Sandbox Code Playgroud)
您将获得精确到小数点后6到7位.试试吧 !!!参考
但请注意,GPS提供商需要时间来获取位置,而谷歌位置要快得多,因为它会从API调用到谷歌服务器数据库.
当谷歌提供商通过移动或wifi数据获取位置时,GPS可脱机工作.
使用FusedLocationProviderApi并将LocationRequest优先级设置为PRIORITY_HIGH_ACCURACY
这是用于准确定位获取的最新API,谷歌建议使用相同的.
在此查看准确度详情.
基本上,Google Play服务API具有通过融合GPS + NetworkProvider +被动提供商来获取准确位置的智能.
| 归档时间: |
|
| 查看次数: |
17179 次 |
| 最近记录: |