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

m пытается поймать события увеличения громкости вверх / вниз, когда телефон находится в режиме глубокого сна. Я прочитал несколько статей и вот что я сделал.

В деятельностиonCreate метод я установилWakeLock

PowerManager mgr = (PowerManager)this.getSystemService(Context.POWER_SERVICE);
WakeLock wakeLock = mgr.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "MyWakeLock");
wakeLock.acquire();

Я прочитал, что даже если мой экран заблокирован, если я установлю это, мое приложение будет реагировать на события. Также я добавил разрешение в Android Manifest.


Тогда вonCreate метод я объявляю мой Broadcast Receiver

VolReceiver volumeBroadcastReceiver = new VolReceiver();

IntentFilter filter = new IntentFilter();
filter.addAction("android.media.VOLUME_CHANGED_ACTION");
registerReceiver(volumeBroadcastReceiver, filter);

Это все работает довольно хорошо, тогда приложение находится на переднем или заднем плане, но затем я блокирую экран телефона, нажимая на кнопку питания, приложение перестает получать широковещательные события, я думаю, чтоPowerManager должен решить эту проблему, но это нет. Поэтому, пожалуйста, помогите мне, предоставьте некоторую информацию.

Ответы на вопрос(2)

Ваш ответ на вопрос