1.静默卸载实现:

  /*** 静默卸载app** @param context* @param packageName app的包名* @throws IOException* @throws InterruptedException*/public static void uninstallApp(Context context, String packageName) throws IOException, InterruptedException {List<PackageInfo> packageInfos = context.getPackageManager().getInstalledPackages(PackageManager.GET_ACTIVITIES);for (PackageInfo packageInfo1 : packageInfos) {if (packageName.equals(packageInfo1.packageName)) {String suPath = "/system/xbin/su";File file = new File(suPath);if (!file.exists()) {suPath = "/system/bin/su";}Process process = Runtime.getRuntime().exec(suPath);String cmd = "pm uninstall " + packageName + "\n" + "exit\n";process.getOutputStream().write(cmd.getBytes());process.waitFor();break;}}}

2.静默安装实现:

/*** 静默安装app** @param filePath* @throws IOException* @throws InterruptedException*/public static void installApp(String filePath) throws IOException, InterruptedException {String suPath = "/system/xbin/su";File file = new File(suPath);if (!file.exists()) {suPath = "/system/bin/su";}Process process = Runtime.getRuntime().exec(suPath);String cmd = "pm install -r " + filePath + "\n" + "exit\n";process.getOutputStream().write(cmd.getBytes());process.waitFor();}

最后加上重启命令:

   /*** 重启系统** @return*/public static boolean reboot() {try {String suPath = "/system/xbin/su";File file = new File(suPath);if (!file.exists()) {suPath = "/system/bin/su";}Process process = Runtime.getRuntime().exec(suPath);String cmd = "reboot\nexit\n";process.getOutputStream().write(cmd.getBytes());return true;} catch (IOException error) {return false;}}

注意卸载和安装需要在子线程中执行;如果单纯关机则用“reboot -p”命令。

android在root权限下实现apk的静默卸载,静默安装,重启相关推荐

  1. Android 命令su,获取Android的ROOT权限其实很简单,只要在Runtime下执行命令su就可以了。复制代码 代码如下:// 获取ROOT权限public void...

    获取Android的ROOT权限其实很简单,只要在Runtime下执行命令"su"就可以了. // 获取ROOT权限 public void get_root(){ if (is_ ...

  2. Android免Root环境下Hook框架Legend原理分析

    0x1 应用场景 现如今,免Root环境下的逆向分析已经成为一种潮流! 在2015年之前的iOS软件逆向工程领域,要想对iOS平台上的软件进行逆向工程分析,越狱iOS设备与安装Cydia是必须的!几乎 ...

  3. Android获取Root权限

    对于新近入手Android系统手机的机友来说,一定会接触到一个新词"ROOT",他的出现频率很高,在各个论坛上,网友的字里行间经常会出现,那么获取Root权限呢? [b]工具/原料 ...

  4. 如何获得Android手机Root权限(转http://www.gphans.com/forum/183)

    如何获得Android手机Root权限 由 gphans 于 周一, 11/02/2009 - 15:10 提交. 使用技巧 疑问一:Root权限是什么? 疑问二:获取Root权限有什么用? 疑问三: ...

  5. android应用程序如何获取root权限,Android获取ROOT权限的实例代码

    获取Android的ROOT权限其实很简单,只要在Runtime下执行命令"su"就可以了. // 获取ROOT权限 public void get_root(){ if (is_ ...

  6. android获取root权限的命令

    获取Android的ROOT权限其实很简单,只要在Runtime下执行命令"su"就可以了. // 获取ROOT权限public void get_root(){if (is_ro ...

  7. python root_python在非root权限下的安装方法

    以前在使用Python的时候,都是使用root用户安装好的全局python,现在,因为root用户安装的Python版本太低,同时自己没有root权限去对全局Python升级,所以要在非root用户下 ...

  8. android root权限下Apk下载、静默安装并自启

    前不久遇到一个需求,说是要实现app的静默安装并且安装完了之后要能够自启动. 我上网查了很多资料,方法基本都差不多,但是基本上每种方法我都试过了,能够实现静默安装,但是自启动的时候就遇到了问题.很多类 ...

  9. Android 上实现非root的 Traceroute -- 非Root权限下移植可执行二进制文件 脚本文件

    1. 原理思路 文件权限修改无法实现 : 如果 没有 root 权限, 就不能改变二进制文件的文件权限; -- 将busybox推送到Android系统中 : 使用 adb push 命令, 将 bu ...

最新文章

  1. 激光雷达Lidar Architecture and Lidar Design(下)
  2. Delphi.net Chrome
  3. 开课吧python视频百度云-廖雪峰老师官方人工智能教程,13个案例带你全面入门!...
  4. idea+maven+ssm搭建boot_crm项目遇到的问题
  5. python生成文件夹并向文件夹写文件_python - 文件练习生成100个MAC地址写入文件
  6. 第二部分 自动内存管理机制
  7. python 自动收集经济数据_完结】数据分析思维案例实战92 用Python自动办公,做职场高手【更新中】91.一课经济...
  8. 空间注意力机制sam_自己挖坑自己填,谷歌大改Transformer注意力,速度、内存利用率都提上去了...
  9. NLB群集的两种操作模式-2
  10. 面向对象编程的四大特性
  11. Pycharm菜单栏消失,(File 、view消失)快速调出来的方法。(Professional Edition 2022版)
  12. 通信协议:CAN总线
  13. Keras学习教程七
  14. Love Your Life》—— 热爱生活
  15. 复星联合创始人梁信军:3大趋势影响全球经济,区块链将重构社会生产关系
  16. 奋斗不止 自强不息:职场话题之跳槽(四)—离职
  17. 树莓派搭建百度云同步
  18. FCKeditor 介绍(转载)
  19. MSP430Ware使用笔记 初始化DCO至8MHz
  20. 找到了!Sketch导出PSD的方法!

热门文章

  1. Java 泛型的本质——类型擦除
  2. 前谷歌员工推Cuil 获3300万风投对战老东家
  3. 遇到bug我们如何分析定位?
  4. Matlab R2017b 绘制散点图
  5. 草根大牛论道“下一代软件研发” 开启软件转型讨论大潮
  6. 计算机如何寻找ppt文件,电脑上没保存的PPT怎么找回来
  7. 【网络】为什么巨型帧会影响延迟?|网络的带宽,吞吐量,时延的理解|MTU
  8. 【Selenium】stale element reference 问题解决方案
  9. csv文件 内容转义_保存csv文件时的生僻字处理和格式控制
  10. 自控力极差的人如何自救-转载自知乎高赞回答