Я хочу проснуться и разблокировать устройство. Затем я хотел бы показать активность, когда у пользователя появилось новое сообщение от Firebase
.Пробуждение устройства программно
Я написал это на onResume()
метод:
window = this.getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED | WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
Это работает для устройств с API> 19. Проблема в том, что в KitKat
, он либо ничего не делает, или он просыпается экран, но не разблокировать устройство.
Также я установил правильные права в AndroidManifest.xml
:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
Также в MyFirebaseMessagingService.class
, я начинаю деятельность с FLAG_ACTIVITY_NEW_TASK
как флагом.
Кто-нибудь знает, что мне не хватает?
Спасибо за помощь.
проверить эту ссылку для разблокировки устройства с помощью кода [ссылка] (http://stackoverflow.com/questions/14352648/how-to-lock-unlock-screen- программно) –