在 Android 12 中,由于更强的隐私保护措施,应用程序无法直接访问全局位置信息。如果您的应用程序需要获取设备的位置,您需要使用 Google Play 服务或 Location API。
以下是使用 Location API 获取位置信息的代码示例:
(1)在 AndroidManifest.xml 文件中添加以下权限:
(2)在代码中获取定位服务:
LocationManager locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
(3)注册位置更新的监听器:
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locationListener);
(4)创建位置更新的监听器:
LocationListener locationListener = new LocationListener() { public void onLocationChanged(Location location) { // Do something with location data }
public void onProviderEnabled(String provider) {}
public void onProviderDisabled(String provider) {}
public void onStatusChanged(String provider, int status, Bundle extras) {}
};
(5)在应用程序退出时,停止监听位置更新:
locationManager.removeUpdates(locationListener);