[英]Get if user has enabled location via network
一些設備(或全部)允許用戶使用網絡(WiFi或數據)隱藏其位置。 如何知道此設置是啟用還是禁用?
我需要通過gps(如果啟用)或通過wifi或數據網絡獲取當前用戶位置。
LocationManager保存以下信息:
LocationManager locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
boolean isGPSEnabled = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
boolean isNetworkdEnabled = locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
我正在使用以下代碼檢查用戶是否啟用了位置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;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.