编程语言
首页 > 编程语言> > android-以编程方式捕获家庭意图

android-以编程方式捕获家庭意图

作者:互联网

我需要我的活动来处理HOME按钮的按下
以编程方式接收方,但事件未触发.我可以,
但是,如果我成功注册并捕获了这个意图过滤器
在manifest.xml活动部分中声明它.这是代码
无效的接收器:

BroadcastReceiver br;

br = new BroadcastReceiver() {
       @Override
       public void onReceive(Context context, Intent intent) {
               return;  // I put a breakpoint here to see if this gets called
       }
};


IntentFilter intf = new IntentFilter();
intf.addAction(Intent.ACTION_MAIN);
intf.addCategory(Intent.CATEGORY_HOME);
intf.addCategory(Intent.CATEGORY_DEFAULT);

registerReceiver(br, intf);

有谁知道为什么它不能捕获主页按钮的点击?

顺便说一句,我尝试通过创建另一个活动来解决此问题
并在清单中指定其意图过滤器.我设定了活动
清单中的enabled =“ false”,但我不知道如何
在运行时启用该活动.底线,我只想
仅当我的应用程序注册主页按钮意图过滤器
应用程序正在运行,我不知道该怎么做.

解决方法:

如果您要实现替换主屏幕,则需要将Intent过滤器放在清单中-请参阅SDK中的Home示例应用程序.

如果您想阻止HOME键,请不要.

标签:android,button,android-intent,intentfilter
来源: https://codeday.me/bug/20191009/1879249.html