捕捉HOME意图编程
-
19-09-2019 - |
题
我需要我的活动处理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);
有谁知道为什么这个不能捕获home键点击?
顺便说一句,我试图解决这个工作通过创建另一个活动 并指定在清单的意图过滤器。我设置活动 启用在清单=“假”,但我无法弄清楚如何 在运行时支持该活动。底线,我只是想 注册home键意图过滤我的应用程序,只有当我 应用程序正在运行,并且我不能找出如何做到这一点。
解决方案
如果你想实现一个更换主屏幕,您需要Intent
过滤器是在清单 - 见首页示例应用程序的SDK
如果你正在试图阻止HOME键,请不要。
其他提示
有不应该是你应该需要覆盖家庭按钮的情况下,它的存在,以确保用户始终保持对他的电话的控制。究竟什么是你想怎么办?如果您希望在活动不再可见检测,你应该覆盖的onStop()。
不隶属于 StackOverflow