从服务中检测android中的全屏

时间:2014-04-06 12:36:23

标签: android android-service

我有一个服务,可以像Facebook Messenger一样创建系统覆盖窗口(总是在顶部)。当任何应用程序处于全屏模式时,我需要隐藏我的窗口。但是,我不知道如何从服务中检测到它。

这就是我在服务中添加视图的方式:

WindowManager windowManager = (WindowManager) getSystemService(WINDOW_SERVICE);
WindowManager.LayoutParams params = new WindowManager.LayoutParams(
            WindowManager.LayoutParams.WRAP_CONTENT,
            WindowManager.LayoutParams.WRAP_CONTENT,
            WindowManager.LayoutParams.TYPE_PHONE,
            WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
            PixelFormat.TRANSLUCENT);
windowManager.addView(myView, params);

1 个答案:

答案 0 :(得分:0)

我前一段时间遇到过同样的问题(参见:Receiving hidden status bar/entering a full screen activity event on a Service)。 我通过向窗口管理器添加一个视图并控制该视图的y位置以检查状态栏是否可见来解决它。