我正在使用融合位置 API:
locationrequest = LocationRequest.create();
locationrequest.setInterval(interval);
locationrequest.setFastestInterval(interval);
locationrequest.setSmallestDisplacement(0);
locationrequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
LocationServices.FusedLocationApi.requestLocationUpdates(locationClient, locationrequest, this);
每当我得到一个位置时,我都会执行 loc.getProvider 并且我总是得到字符串“Fused”。
我期待网络与 GPS 或其他一些迹象。
有任何想法吗?
最佳答案
这是 FusedLocationApi 的预期行为 - 它结合服务以减少电力使用以及出于各种其他原因。
如果您需要使用特定的提供程序,则需要 http://developer.android.com/reference/android/location/package-summary.html
正如该页面所说,这不是获取位置的推荐方式。
如果您对处理返回位置的准确性感兴趣,最好在逐个更新的基础上执行此操作 - 使用 Location.getAccuracy()
关于android - Location.getProvider 总是返回 "fused"而不是 GPS 或网络,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28132300/