在室内定位时,使用GPS定位获取失败,后发现getLastKnownLocation返回为null,说是getLastKnownLocation无法一次就能获取到,所以写了个循环来解决,但是没有用,想问一下怎么解决这个问题,或者使用其他的办法在室内获取到定位。
Manifest.permission.ACCESS_FINE_LOCATION;
Manifest.permission.ACCESS_COARSE_LOCATION;
这两个权限动态获取了吗
getLastKnownLocation必须要在打开GPS后有进行过定位才能获得数据,切换GPS开关状态后不做其他操作就算一直循环也会是null。可以通过locationManager.requestLocationUpdates进行请求定位。
while (location == null){
mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,2000,0,mGPSListener);
location = mLocationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
}
我在循环里写了的