实现重启
考虑到设备需要远程或自动重启的场景(比如通过远程推送的方式下发重启指令、设备定时重启缓解资源紧张等),下面提供一种思路:
public static void reboot(Context context) {
Intent intent = new Intent(Intent.ACTION_REBOOT);
intent.putExtra("nowait", 1);
intent.putExtra("interval", 1);
intent.putExtra("window", 0);
context.sendBroadcast(intent);
}
传入一个上下文对象即可(如果是在服务或者广播接收器中实现重启,可用Application的上下文对象)
实现静默安装APK
需要使用到上一篇中的ShellUtils来执行shell命令–>【android工具篇】Firefly-RK系列(eg:RK3288 RK3368)一键获取root权限工具RootUtils
ShellUtils.execCommand("pm install -r -i 你应用的包名 " + path + "n", false);
效果:安装之后会退出应用,过一小段时间会自动打开应用
注意上面的命令需要填写你应用的包名。
实现重启
考虑到设备需要远程或自动重启的场景(比如通过远程推送的方式下发重启指令、设备定时重启缓解资源紧张等),下面提供一种思路:
public static void reboot(Context context) {
Intent intent = new Intent(Intent.ACTION_REBOOT);
intent.putExtra("nowait", 1);
intent.putExtra("interval", 1);
intent.putExtra("window", 0);
context.sendBroadcast(intent);
}
传入一个上下文对象即可(如果是在服务或者广播接收器中实现重启,可用Application的上下文对象)
实现静默安装APK
需要使用到上一篇中的ShellUtils来执行shell命令–>【android工具篇】Firefly-RK系列(eg:RK3288 RK3368)一键获取root权限工具RootUtils
ShellUtils.execCommand("pm install -r -i 你应用的包名 " + path + "n", false);
效果:安装之后会退出应用,过一小段时间会自动打开应用
注意上面的命令需要填写你应用的包名。
举报