2015-01-05 1 views
1

Я отлаживаю некоторый код, где Служба добавляет окно системного предупреждения поверх активности в результате ключевого события.Создает ли окно системного предупреждения с помощью службы send top activity onPause

В окне есть поля ввода, для которых отображается клавиатура, которая очищает полноэкранные флаги, которые была установлена ​​верхней активностью, когда она была создана.

Это может произойти только в том случае, если верхняя активность не была отправлена ​​на задний план, когда служба добавила system_alert_window поверх операции.

Таким образом, я хотел подтвердить, что действие переходит к фону или onPause(), когда к нему добавляется system_alert_window, например, если произойдет другое действие над ним.

+0

Почему вы не отлаживаете себя? Это было более убедительно для вас, потому что вы видите журнал. – k0sh

+0

Я сделал операцию dumpsys, и верхняя активность по-прежнему находится на вершине, даже если окно предупреждения находится поверх нее ... также из журналов, которые я вижу, onPause() не вызывается, когда открывается окно предупреждения или onResume, когда окно предупреждений скрывает..если вы хотите подтвердить от вас, ребята, так ситуация, которую я описал выше, о полноэкранном действии, превращенном в not_fullscreen, с помощью оверлейного окна предупреждения? –

+0

Aler не останавливает активность и не запускает сервис из-за активности – k0sh

ответ

1

Я сделал больше исследований как часть постоянной ошибки для изменения AOSP.

В процессе, я узнал, что

  • Нет открытие окна уведомления на верхней части деятельности не должен и не отправляет его на задний план или позвонить OnPause().

  • Окно активности больше не находится в фокусе, когда окно предупреждения открывается поверх него, но вид активности все еще виден, т.е. view.visibility = VISIBLE.

  • Когда окно оверлея завершено, окно активности снова получает фокус.