0

我几乎尝试了一切,只是为了简单地创建一个透明的覆盖活动,该活动一直在后台运行。它应该做的只是在那里,它不应该捕获任何点击事件,而只是将它们传递给底层的任何活动。很多帖子似乎都有解决方案。但对我来说,到目前为止,它们都没有奏效。(请参阅 如何创建一个覆盖画布并将触摸事件传播到主屏幕?

在来电屏幕上弹出

在活动的 onCreate 中,我尝试了这些组合以使其工作:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE); 
getWindow().addFlags(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE);
getWindow().addFlags(WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL);     
getWindow().addFlags(WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH);    

尽管如此,屏幕似乎只允许触摸事件,但没有点击事件。因此,例如,当我在默认主屏幕并启动我的应用程序时,我无法打开任何应用程序,但我可以拖动应用程序并奇怪地选择它们。

请帮忙,到目前为止我还没有找到任何解决方案。

4

1 回答 1

1

如果用户不直接与应用程序交互,是否有理由使用活动而不是服务?

于 2013-05-27T14:05:31.727 回答