Android 一键唤醒应用

Android 一键唤醒应用

最近收到客户需求,需要设备实现一键唤醒应用功能,本次以录音机为例,一键唤醒应用功能具体修改参照如下:

/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java

复制代码
    public int interceptKeyBeforeQueueing(KeyEvent event, int policyFlags) {
    ...
    // Handle special keys.
    switch (keyCode) {
+            case KeyEvent.KEYCODE: {//uKEYCODE
+
+                String uPackageName = "com.android.soundrecorder";
+                String uClassName = "com.android.soundrecorder.SoundRecorder";
+
+                KeyguardManager mKeyguardManager = (KeyguardManager)mContext.getSystemService(Context.KEYGUARD_SERVICE);
+                boolean flag = mKeyguardManager.inKeyguardRestrictedInputMode();
+                   if(down){
+                            if(uPackageName != null && uClassName != null && !flag){
+                                Intent intent = new Intent();
+                                intent.setClassName(uPackageName,uClassName);
+                                if("com.android.soundrecorder".equals(uPackageName))
+                                mContext.startActivity(intent);
+                            }
+                    }
+                break;
+            }

重新编译验证,修改生效,设备已实现一键唤醒应用功能

相关推荐
Android系统攻城狮6 小时前
Android内核进阶之获取DMA地址snd_pcm_sgbuf_get_addr:用法实例(九十一)
android·pcm·android内核·音频进阶·pcm硬件参数
清空mega7 小时前
Android Studio移动应用基础教程(前言)
android·ide·android studio
2501_937145417 小时前
2025IPTV 源码优化版实测:双架构兼容 + 可视化运维
android·源码·源代码管理·机顶盒
zhoutanooi9 小时前
安卓bp文件编译学习
android·学习
aramae10 小时前
MySQL数据库入门指南
android·数据库·经验分享·笔记·mysql
百锦再10 小时前
选择Rust的理由:从内存管理到抛弃抽象
android·java·开发语言·后端·python·rust·go
whatever who cares11 小时前
在Java/Android中,List的属性和方法
android·java
油炸小波13 小时前
09-微服务原理篇(XXLJOB-幂等-MySQL)
android·mysql·微服务
果子没有六分钟13 小时前
setprop debug.hwui.profile visual_bars有什么作用
android
键来大师17 小时前
Android15 源码关闭Selinux
android·java·framework·rk3588