Итак, я делаю приложение, которое прослушивает активность Screen On в Android. У меня есть широковещательный приемник, который принимает Intent.ACTION_SCREEN_ON
. Затем этот получатель начинает действие.
Все работает нормально, но активность начинается даже при включенном экране из-за входящего звонка.
Это мой код.
if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)){
Intent i = new Intent(context, MainScreenActivity.class);
i.putExtras(intent);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
Log.e("receiver", "throwing in the lock screen");
}
Я не совсем уверен, как проверить текущее состояние телефона. У меня есть разрешение на чтение PHONE_STATE
, но как мне узнать, был ли запущен сценарий действия из-за звонка?
Также есть задержка, когда экран фактически включается и отображается активность. Экран блокировки по умолчанию отображается в течение короткого времени, а затем появляется пользовательский. Можно ли что-то сделать, чтобы избежать этой задержки?