是否使用服务发送 top activity onPause 创建系统警报 window

Does creating a system alert window using a service send top activity onPause

我正在调试一些代码,其中服务在 activity 之上添加系统警报 window 作为关键事件的结果。

window 有输入字段,键盘会显示,这会清除顶部 activity 创建时设置的全屏标志。

只有当服务在 activity 之上添加 system_alert_window 时未将顶部 activity 发送到后台时才会发生这种情况。

因此我想确认 activity 是否进入后台或 onPause() 当 system_alert_window 添加到它上面时,就像另一个 activity 会发生一样从它开始。

作为修改 AOSP 的持续错误的一部分,我做了更多研究。

在这个过程中,我了解到

  • 不在 activity 之上打开警报 window 不应该也不会将其发送到后台或调用 onPause()。

  • activitywindow 不再处于焦点,当在其上打开警报 window,但 activity 视图仍然可见,即。 view.visibility =可见。

  • 当覆盖 window 退出时,activity window 再次获得焦点。