Android任务管理器或系统对话框

时间:2013-04-12 05:57:47

标签: android android-layout android-intent android-widget

我想知道有没有办法在显示系统对话框时获取事件(此类任务管理器,关闭警报,......)。

我可以通过下面的意图关闭我的活动中的系统对话框

Intent closeDialog = new Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);
        sendBroadcast(closeDialog);

但是在我的代码中我需要知道屏幕上显示一个系统对话框(它们可以是任务管理器/关闭对话框......),这样我就可以调用上面的代码来关闭它。

我搜索了没有找到的意图过滤器。

2 个答案:

答案 0 :(得分:0)

在Actvity中添加以下方法并检查最近的应用对话框自动关闭

public void onWindowFocusChanged(boolean hasFocus) {
        super.onWindowFocusChanged(hasFocus);

        Log.e("Focus debug", "Focus changed !");

        if (!hasFocus) {
            Log.e("Focus debug", "Lost focus !");

            Intent closeDialog = new Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);
            sendBroadcast(closeDialog);
        }
    }

注意:它仅适用于单个Activity。不适用于您应用中的所有活动。

答案 1 :(得分:0)

使用Broadcast-Receiver并在onreceive()方法中放置intent。然后在显示警告对话框的位置注册此接收器。然后它会自动禁用设置,最近的应用按钮 ----纳格什