ожидание создания макета, а затем отображение уведомления

В настоящее время я использую долговременный сервис в качестве таймера, который может длиться до 4 часов. Активность, которая вызывает службу, обычно уничтожается, когда она какое-то время находится в фоновом режиме. Когда служба завершает свою задачу, она вызывает активность обратно на передний план. Затем служба отправляет информационный бюллетень о действии, которое оно завершило, и действие воспроизводит сигнал тревоги.

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

Как я могу дождаться диалогового окна предупреждения, пока не отобразится макет и не завершится метод onCreate?


person VirtualProdigy    schedule 26.01.2012    source источник
comment
Я думаю, вы должны показать нам код для более точного ответа. Во-первых, каким методом вы отображаете диалог? Вы пытались показать диалог на шагах после этапа onCreate, например onStart, onResume?   -  person marwinXXII    schedule 13.06.2012


Ответы (1)


Я бы подошел к этой ситуации, используя службу уведомлений. Уведомление можно настроить таким образом, чтобы при нажатии на него действие запускалось, и вы можете передать значение флагу для отображения диалогового окна. Эта ссылка должна быть полезной: Отправка уведомления из службы в Android

Затем вы можете инициировать диалог в методе onResume.

person Proxy32    schedule 13.06.2012