Что я хочу:
Я разрабатываю одно приложение, в котором я хочу отображать диалог / всплывающее окно при входящем звонке.
Я заметил в журнале, что между началом активности при входящем звонке и включением экрана телефона есть небольшая задержка.Сначала запускается действие, а затем включается экран телефона.
Поэтому я хочу отобразить это диалоговое окно после включения экрана телефона.Короче хочу подождать пока телефон включится.
Что я пробовал:
Я использовал Asynctask в BroadcastReceiver
protected Boolean doInBackground(Void... params) {
PowerManager powerManager = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
isScreenOn = powerManager.isInteractive();
return isScreenOn;
}
ипоследовал этот ответ.Но это дает мне исключение времени компиляции
необработанное исключение java.util.concurrent.executionexception даже после поиска в Google, я не смог ее решить.Поэтому я использовал другой подход.
- Я создал еще один * широковещательный приемник для состояния экрана телефона согласно этой ссылке
(* Обратите внимание, я ужеесть приемник широковещательной рассылки входящего вызова)
Но я не могу понять, как приемник широковещательной рассылки входящего вызова будет связываться с приемником широковещательной передачи экрана телефона и ждать, пока включится экран телефона.
- Iдаже пытался добавить действие намерения в существующий приемник вещания, но опять же не знаю, как ждать, пока экран телефона не включится.
Какие-либо указатели / предложения?