华为手机实现自动安装与不可锁屏熄屏(Xposed)

本文提供了一种解决华为EMUI系统中ADB安装应用时弹窗问题的方法,并分享了如何防止系统锁屏与熄屏的技术细节。通过Xposed框架的hook方法,可以实现adb安装应用时自动确认及保持屏幕常亮的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有些华为手机无法关闭监控adb安装应用 adb安装会弹窗安装界面 所以有了这个
华为系统EMUI-5.1 打包安装程序 版本号 3.51.3.303
个人经验 华为系统应用升到高版本(EMUI-8.2.0)代码也不会有太大变化 一般都是通用的

  if(lpparam.packageName.equals("com.android.packageinstaller")) {      findAndHookMethod("com.android.packageinstaller.PackageInstallerActivity", lpparam.classLoader,
                    "onCreate", Bundle.class,new XC_MethodHook() {
                        protected void afterHookedMethod(XC_MethodHook.MethodHookParam arg6) throws Throwable {
                            Object v0 = XposedHelpers.getObjectField(arg6.thisObject, "t");
                            XposedHelpers.setBooleanField(arg6.thisObject, "x", true);
                            ((Button)v0).performClick();
                        }

                    });

}

不可锁屏与熄屏
华为系统EMUI-5.1 系统用户界面 5.0.0.1

  if (lpparam.packageName.equals("com.android.systemui"))
  {
            findAndHookMethod(findClass("com.android.systemui.keyguard.KeyguardViewMediator" ,lpparam.classLoader) ,
                    "onFinishedGoingToSleep",int.class,boolean.class,
                    new XC_MethodHook() {
                        @Override
                        protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
                            super.beforeHookedMethod(param);
                            param.args[1]=true;
                        }

                        @Override
                        protected void afterHookedMethod(MethodHookParam param) throws Throwable {
                            super.afterHookedMethod(param);

                            Log.v(TAG,"onFinishedGoingToSleep 状态:"
                                    +param.args[0]+"||"
                                    +param.args[1]+"||"
                                    +param.getResult());

                        }
                    });    






         findAndHookMethod(findClass("com.android.systemui.keyguard.KeyguardViewMediator" ,lpparam.classLoader) ,
                    "setWakeAndUnlocking",boolean.class,
                    new XC_MethodHook() {
                        @Override
                        protected void afterHookedMethod(MethodHookParam param) throws Throwable {
                       
                 callMethod(param.thisObject,  "setKeyguardEnabled",false);
                                    


                        }
                    });
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值