某些设备(或可能全部)允许用户使用网络(wifi或数据)隐藏其位置。 如何知道此设置是启用还是禁用?
我需要通过gps(如果已启用)或通过wifi或数据网络获取当前用户位置。
答案 0 :(得分:1)
LocationManager保存这些信息:
LocationManager locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
boolean isGPSEnabled = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
boolean isNetworkdEnabled = locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
答案 1 :(得分:0)
我正在使用以下代码检查用户是否启用了位置gps或网络提供程序:
private static LocationManager sLocationManager =
(LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
public static boolean isLocationProviderEnabled() {
if (sLocationManager != null) {
boolean gpsEnabled = false;
boolean networkEnabled = false;
try {
gpsEnabled = sLocationManager
.isProviderEnabled(LocationManager.GPS_PROVIDER);
networkEnabled = sLocationManager
.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
if (gpsEnabled || networkEnabled) {
return true;
}
} catch (Exception e) {
}
}
return false;
}