获取android设备位置最可靠的方法是什么?
我现在使用的方法非常不可靠。 在我的Android设备(不是模拟器)中,大多数时候返回的位置都是空的。尽管有时它确实可以工作获取android设备位置最可靠的方法是什么?,android,gps,location,android-location,Android,Gps,Location,Android Location,我现在使用的方法非常不可靠。 在我的Android设备(不是模拟器)中,大多数时候返回的位置都是空的。尽管有时它确实可以工作 public Location getLocation(String provider) { if (locationManager.isProviderEnabled(provider)) { locationManager.requestLocationUpdates(provider, MIN_TIME_FO
public Location getLocation(String provider) {
if (locationManager.isProviderEnabled(provider)) {
locationManager.requestLocationUpdates(provider,
MIN_TIME_FOR_UPDATE, MIN_DISTANCE_FOR_UPDATE, this);
if (locationManager != null) {
location = locationManager.getLastKnownLocation(provider);
return location;
}
}
return null;
}
我知道在引入API 23之后,我还需要处理其他权限。
是否有可靠的方法获取位置 相信我,获取位置最可靠的方法是依赖于“onLocationChanged”方法,因为调用getLastKnownLocation方法并不意味着获得新位置或非空结果。你可以阅读下面的内容 这可以在不启动提供程序的情况下完成。请注意 位置可能已过期,例如,如果设备已关闭 关闭并移动到另一个位置 如果提供程序当前已禁用,将返回null
我最不想注意的是,调用requestLocationUpdates方法并不意味着它将尽快为您提供位置信息。这就是我提到“onLocationChanged”回调方法的原因 在github上签出与位置相关的google示例: 如何获取上次已知位置、位置更新等