android home按键拦截
发布日期:2021-06-29 15:23:36
浏览次数:3
分类:技术文章
本文共 935 字,大约阅读时间需要 3 分钟。
home按键默认现在没法屏蔽,但是mtk由于特殊需要,需要拦截home按键,于是添加了一套机制实现。 1:在alps\frameworks\base\core\java\android\view WindowManager.java 里面添加一个属性 /** M: Window flag: When this flag is set, the home key can be dispatched * to the window. * {@hide} */ public static final int FLAG_HOMEKEY_DISPATCHED = 0x80000000; 2:在 alps\frameworks\base\policy\src\com\android\internal\policy\impl PhoneWindowManager.java 里面的 public long interceptKeyBeforeDispatching(WindowState win, KeyEvent event, int policyFlags) { 接口里面,添加 if (keyCode == KeyEvent.KEYCODE_HOME) { /// M: [ALPS00054781]Dispatch the home key to the application @{ if (win != null && win.getAttrs() != null) { final int flag = win.getAttrs().flags; if ((flag & WindowManager.LayoutParams.FLAG_HOMEKEY_DISPATCHED) != 0) { // the window wants to handle the home key, so dispatch it to it. return 0; } } 通过这里来拦截home按键 3:如果需要app拦截 在 activity 的 onCreate 里面增加 getWindow().addFlags(FLAG_HOMEKEY_DISPATCHED); 即可。转载地址:https://codegg.blog.csdn.net/article/details/41381619 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
很好
[***.229.124.182]2024年04月28日 05时26分24秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
在后台的python:众多程序员无法攻克的难题
2019-04-29
未来战争:装载AI的美国空军侦察机已经试飞……
2019-04-29
屡战屡败:为什么你会觉得学习编程很难?
2019-04-29
“狙击”特斯拉:电动汽车后起之秀的最后一战
2019-04-29
软件测试的未来:2021年需要关注的15大软件测试趋势
2019-04-29
六大基本AI术语:如何做好人工智能咨询服务?
2019-04-29
讲真,如果手机有灵魂,那就是“备忘录”
2019-04-29
端到端加密:WhatsApp不会去读取你的信息,它不需要……
2019-04-29
国会大厦骚乱,与一家极不可靠的面部识别公司……
2019-04-29
解锁宇宙密码:为什么是3、6、9?
2019-04-29
数据可视化中的格式塔心理学
2019-04-29
电动汽车的“专属危险”:网络威胁问题不容小觑
2019-04-29
短暂的告别,马上再回来
2019-04-29
统治50年:为什么SQL在如今仍然很重要?
2019-04-29
测试是一场竞争,而数据每次都会获得胜利
2019-04-29
读心的测谎系统:究竟是骗子还是个天才?
2019-04-29
最大规模技术重建:数据库连接从15000个到100个以下
2019-04-29
复工之后:员工如何改善网络安全?
2019-04-29
70%求职者因此被拒,你还不避开这些“雷区”?!
2019-04-29
办法不在多,有用就行!用Dropout解决过度拟合问题
2019-04-29