Обнаружение изменения настроек местоположения из быстрых настроек - PullRequest
0 голосов
/ 23 марта 2020

В настоящее время я разрабатываю приложение, для которого требуется, чтобы служба определения местоположения Android была всегда активной.

Сейчас я могу определить, активирует ли пользователь деактивацию службы определения местоположения, когда он возобновляет работу приложения (в событии onResume ()).

Проблема в том, что, если пользователь отключает службу определения местоположения через меню быстрых настроек, я не могу обнаружить событие.

Как я могу узнать, когда пользователь активирует / деактивирует местоположение устройства с помощью быстрых настроек?

Спасибо.

Мой код:

...

BroadcastReceiver mGpsSwitchStateReceiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {

        if (intent.getAction() != null && intent.getAction().matches("android.location.PROVIDERS_CHANGED")) {
            // Make an action or refresh an already managed state.
            Log.d("vtApp", "CHANGED");
        }
    }
};

currentActivity.registerReceiver(mGpsSwitchStateReceiver, new IntentFilter(LocationManager.PROVIDERS_CHANGED_ACTION));

Ссылки, за которыми я следил:

Как запустить широковещательный приемник при включении / выключении GPS?

Android Уведомления о быстрых настройках?

Изменение настроек местоположения

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...