Страницы

Поиск по вопросам

вторник, 16 июля 2019 г.

Проверить включен ли GPS на Android

Воспользовался этим решением
public static boolean isLocationEnabled(Context context) { int locationMode = 0; String locationProviders;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT){ try { locationMode = Settings.Secure.getInt(context.getContentResolver(), Settings.Secure.LOCATION_MODE);
} catch (SettingNotFoundException e) { e.printStackTrace(); }
return locationMode != Settings.Secure.LOCATION_MODE_OFF;
}else{ locationProviders = Settings.Secure.getString(context.getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED); return !TextUtils.isEmpty(locationProviders); } }
Но этот метод всегда возвращает true, не зависимо включен или выключен GPS


Ответ

Посмотрите в сторону LocationManager
LocationManager locationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);; boolean enabled = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER); //enabled true если включен GPS
Ну и не забудьте о пермишене в манифесте:

Комментариев нет:

Отправить комментарий