我尝试了Fused Location(GoogleApiClient)并且在获取位置时它是不准确的,它给了我以前的位置,即使我要求新的(当前的),我要求10个请求(为了尽可能准确)但在4-6次之后,它只是停止请求而它所获得的那些是非常不准确的(准确度为881m).
另一方面,当使用LocationManager时,它总是或多或少地给我我的位置,它从未在中间停止无缘无故,而且一般来说更稳定.
那么融合位置以何种方式优于位置管理器?
诡异的!!!融合定位应该更快并且应该提供更准确的位置。
确保您正在请求位置更新
LocationServices.FusedLocationApi.requestLocationUpdates(
mGoogleApiClient, mLocationRequest, this
);
Run Code Online (Sandbox Code Playgroud)
而不是获取最后已知的位置
mLastLocation = LocationServices.FusedLocationApi.getLastLocation(
mGoogleApiClient
);
Run Code Online (Sandbox Code Playgroud)
并且您正在使用LocationRequest.PRIORITY_HIGH_ACCURACY(GPS)。
Fused Location和Location Manager之间的主要区别是后者不依赖于Google Play 服务。
| 归档时间: |
|
| 查看次数: |
5327 次 |
| 最近记录: |