Ale*_*ite 69 android location google-maps
我已经读过一些关于此的问题,但我找不到我需要的答案.
所以,情况是我设置了我的地图,我想获取当前的gps位置.我已经检查过我的变量不是NULL但是我的结果来自:
getLastKnownLocation(provider, false);
Run Code Online (Sandbox Code Playgroud)
虽然给了我null,所以这是我需要帮助的地方.我已经为COARSE + FINE位置添加了权限.但我通常会为手机禁用各种网络数据,因为我对手机账单中不可预测的数据流费用感到不满.所以我只启用了WiFi并连接了此测试.
还有什么我需要启用才能实现这一目标吗?我认为WiFi应该足够了吗?
Tha*_*ana 174
使用此方法获取最后的已知位置:
LocationManager mLocationManager;
Location myLocation = getLastKnownLocation();
private Location getLastKnownLocation() {
mLocationManager = (LocationManager)getApplicationContext().getSystemService(LOCATION_SERVICE);
List<String> providers = mLocationManager.getProviders(true);
Location bestLocation = null;
for (String provider : providers) {
Location l = mLocationManager.getLastKnownLocation(provider);
if (l == null) {
continue;
}
if (bestLocation == null || l.getAccuracy() < bestLocation.getAccuracy()) {
// Found best last known location: %s", l);
bestLocation = l;
}
}
return bestLocation;
}
Run Code Online (Sandbox Code Playgroud)
Bin*_*mar 25
当你不应该将新的和旧的位置API混合在一起时.
要获得最后一个已知位置,您需要做的就是打电话
compile "com.google.android.gms:play-services-location:11.0.1"
mLocationClient.getLastLocation();
Run Code Online (Sandbox Code Playgroud)
一旦定位服务连接.
阅读如何使用新的位置API
http://developer.android.com/training/location/retrieve-current.html#GetLocation
private void getLastLocationNewMethod(){
FusedLocationProviderClient mFusedLocationClient = LocationServices.getFusedLocationProviderClient(this);
mFusedLocationClient.getLastLocation()
.addOnSuccessListener(new OnSuccessListener<Location>() {
@Override
public void onSuccess(Location location) {
// GPS location can be null if GPS is switched off
if (location != null) {
getAddress(location);
}
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.d("MapDemoActivity", "Error trying to get last GPS location");
e.printStackTrace();
}
});
}
Run Code Online (Sandbox Code Playgroud)
您正尝试从网络提供商处获取缓存位置.您需要等待几分钟才能获得有效的修复.由于网络提供程序的缓存为空,因此您显然在此处获得空值.
归档时间: |
|
查看次数: |
64521 次 |
最近记录: |