Android APP机顶盒开机自启,Xposed解决方案 您所在的位置:网站首页 安卓开机自动运行apk Android APP机顶盒开机自启,Xposed解决方案

Android APP机顶盒开机自启,Xposed解决方案

2024-07-12 01:51| 来源: 网络整理| 查看: 265

公司某Android TV项目需要应用开机自启,进入应用界面。  使用的是创维T2盒子, 普通解决方式无法解决问题,应该是厂商进行了限制,无法自启。

最后使用Xposed解决了。该方式应该同样适用于可以root的其他手机/盒子。

root设备。我使用360root成功root了创维T2盒子,其它设备请自行尝试。安装xposed框架编写xposed 模块。安装使用 编写xposed 模块,如果第一次开启的页面需要请求数据,建议延时5秒

请自行搜索教程,结合下面的代码

1.manifest文件

123456789101112131415161718192021 123456789101112131415161718192021

2 编写XposedInit文件。其它设备请自行查找launcher的包名和要hook的方法。

package com.wiseljz.autostart; import android.content.Context; import android.content.Intent; import de.robv.android.xposed.IXposedHookLoadPackage; import de.robv.android.xposed.XC_MethodHook; import de.robv.android.xposed.callbacks.XC_LoadPackage; import static de.robv.android.xposed.XposedHelpers.callMethod; import static de.robv.android.xposed.XposedHelpers.callStaticMethod; import static de.robv.android.xposed.XposedHelpers.findAndHookMethod; import static de.robv.android.xposed.XposedHelpers.findClass; /** * Created by l.wang ([email protected]) on 2017/8/8. */ public class XposedInit implements IXposedHookLoadPackage { @Override public void handleLoadPackage(XC_LoadPackage.LoadPackageParam loadPackageParam) throws Throwable { //找到launcher的包名,hook Application的onCreate方法 //com.skyworthdigital.sky2dlauncherv4 if(loadPackageParam.packageName.contains("sky2dlauncherv4")){ findAndHookMethod("com.skyworthdigital.sky2dlauncherv4.SkyApplication", loadPackageParam.classLoader, "onCreate", new XC_MethodHook() { @Override protected void afterHookedMethod(MethodHookParam param) throws Throwable { Object activityThread = callStaticMethod(findClass("android.app.ActivityThread", null), "currentActivityThread"); Context mContext = (Context) callMethod(activityThread, "getSystemContext"); //自己应用的隐式启动action Intent intent = new Intent("com.wiseljz.sample.action"); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); mContext.startActivity(intent); } }); } } } 123456789101112131415161718192021222324252627282930313233343536373839404142 123456789101112131415161718192021222324252627282930313233343536373839404142

3.定义入口,asserts文件夹下xposed_init文件,文件中写上上面文件的路径

com.wiseljz.autostart.XposedInit 1 1

4 build.gradle文件

如果报错  class ref in pre-verified class resolved to unexpected implementation

将XposedBridgeApi-54.jar 放到lib目录下,使用下面的语句,

provided fileTree(include: ['*.jar'], dir: 'lib') compile fileTree(include: ['*.jar'], dir: 'libs') 12


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有