只申请了 ACCESS_COARSE_LOCATION 权限,getLastKnownLocation获取不到经纬度
时间: 2023-10-23 13:09:43 浏览: 49
如果您只申请了 `ACCESS_COARSE_LOCATION` 权限,那么可能无法通过 `getLastKnownLocation` 方法获取到位置信息,因为该方法只能获取到设备最后一次记录的位置,而不是实时位置。如果设备在获取位置之后经过了一段时间,那么这个位置可能已经过期了。
您可以尝试使用 `LocationListener` 接口来实时获取设备的位置信息。示例代码如下:
```java
LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
// 没有权限,请求权限
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_COARSE_LOCATION}, REQUEST_CODE);
return;
}
// 设置位置提供器和最小更新时间和最小更新距离
locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 1000, 10, new LocationListener() {
@Override
public void onLocationChanged(Location location) {
double latitude = location.getLatitude();
double longitude = location.getLongitude();
Log.d(TAG, "Latitude: " + latitude + ", Longitude: " + longitude);
// 在这里进行位置信息的处理
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
}
@Override
public void onProviderEnabled(String provider) {
}
@Override
public void onProviderDisabled(String provider) {
}
});
```
在这个例子中,我们使用 `LocationManager.NETWORK_PROVIDER` 作为位置提供程序,设置了最小更新时间为1秒,最小更新距离为10米,表示当设备移动超过10米或者1秒钟时间过去之后,就会获取到最新的位置信息。
请注意,由于使用的是网络位置提供程序,因此获取到的位置信息可能会有一定的误差。如果您想要获得更精确的位置信息,需要申请 `ACCESS_FINE_LOCATION` 权限,并使用 `LocationManager.GPS_PROVIDER` 作为位置提供程序来获取位置信息。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)