pm install [-l] [-r] [-t] [-i INSTALLER_PACKAGE_NAME][-s] [-f] PATH

pm uninstall [-k] PACKAGE

pm命令可以通过adb在shell中执行,同样,我们可以通过代码来执行。

 /** m命令可以通过adb在shell中执行,同样,我们可以通过代码来执行*/public static String execCommand(String ...command){Process process=null;InputStream errIs=null;InputStream inIs=null;String result="";try {process=new ProcessBuilder().command(command).start();ByteArrayOutputStream baos = new ByteArrayOutputStream();int read = -1;errIs=process.getErrorStream();            while((read=errIs.read())!=-1){baos.write(read);}inIs=process.getInputStream();while((read=inIs.read())!=-1){baos.write(read);}result=new String(baos.toByteArray());if(inIs!=null)inIs.close();if(errIs!=null)errIs.close();process.destroy();} catch (IOException e) {result=e.getMessage();}return result;}
1 execCommand("pm","install","-f",filePath);//安装apk,filePath为apk文件路径,如/mnt/sdcard/ApiDemos.apk
2 execCommand("pm","uninstall", packageName);//卸载apk,packageName为包名,如com.example.android.apis

编译生成apk时,要在你的manifest文件下添加android:sharedUserId="android.uid.system",如:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.xieyuan.mhfilemanager"android:versionCode="1"android:versionName="1.0"android:installLocation="internalOnly"android:sharedUserId="android.uid.system" >

编译完成之后还无法正常安装,会出现Installationerror:INSTALL_FAILED_SHARED_USER_INCOMPATIBLE错误,此时,要为apk重新签名。

在android源码\build\target\product\security中找platform.pk8和platform.x509.pem两个文件,在android编绎目录out下找到 signapk.jar这个包(源码目录\build\tools\signapk),并把编译好的apk(如PMDemo.apk)放在同一目录下,在重新签名之前,用rar文件打开apk文件,进入META-INF目录下,将CERT.SF和CERT.RSA这两个文件删除掉,然后在命令行中执行以下命令:

1 java -jar signapk.jarplatform.x509.pem platform.pk8 PMDemo.apk NewPMDemo.apk

安装前先把旧的apk卸载,这样重新签名之后的apk就可以正常安装了。

没有platform.pk8和platform.x509.pem,signapk.jar的可以到这里下载

http://download.csdn.net/detail/ab6326795/6042755

使用pm命令安装或卸载apk,静默安装、卸载方法相关推荐

  1. Windows下静默卸载与静默安装

    Windows下静默卸载与静默安装 作者:高玉涵 时间:2020.12.27 15:09 博客:blog.csdn.net/cg_i 作者背景环境参见: <通过Windows批处理脚本批量修改D ...

  2. xorg方式在无图形环境安装oracle,告别静默安装

    xorg方式在无图形系统中安装oracle,告别静默安装 众所周知,静默安装的方式需要修改大量的配置文件和系统参数,稍有差错查起来相当困难.下面介绍用图形方式在无图形系统中安装oracle的方法. 一 ...

  3. android在root权限下实现apk的静默卸载,静默安装,重启

    1.静默卸载实现: /*** 静默卸载app** @param context* @param packageName app的包名* @throws IOException* @throws Int ...

  4. Centos 7 64位 minimal 最小化安装的系统中静默安装oracle 11g r2(无图形化安装)

    一 安装运行环境(操作系统环境) 1,最小化安装 linux CentOS7 我使用的镜像包:CentOS-7-x86_64-Minimal-1708.iso 操作系统安装步骤:https://blo ...

  5. oracle静默安装快吗,Oracle静默安装简要的注意事项

    Oracle 静默安装简要的注意事项,如果以 Oracle 身份运行以上命令.那么事先要把 $ORACLE_BASE $ORACLE_HOME 等相应的目录建立好 首页 → 数据库技术 背景: 阅读新 ...

  6. redhat oracle 12c 安装图解,RedHat 7 静默安装Oracle 12c

    之前在网上看了很多Oracle的静默安装教程,感觉有些乱,经过自己查阅Oracle官网英文手册,结合在虚拟机中安装测试,整理出了这篇RedHat 7 静默安装Oracle 12c.redhat 6静默 ...

  7. adb 静默安装_Android ROOT下静默安装并打开APP

    最近项目有自动更新的需求,因为是无人值守的项目,所以需要静默更新并且更新完成后打开app,网上搜了一通,大概有两个方案.设备是root过的. 1.shell安装,广播开启 通过shell命令安装app ...

  8. oracle 12cr2静默安装,oracle 12c R2静默安装

    1.扩大交换分区 dd if=/dev/zero of=/tmp/mem.swap bs=1M count=4096 /sbin/mkswap /tmp/mem.swap /sbin/swapon / ...

  9. Android 无需root实现apk的静默安装

    转载请注明出处:http://blog.csdn.net/yyh352091626/article/details/50533137 Android的静默安装似乎是一个很有趣很诱人的东西,但是,用普通 ...

最新文章

  1. PostgreSQL schemaless 的实现(类mongodb collection)
  2. python入门教程非常详细-python初学者怎么入门:python入门教程非常详细
  3. 掌握好这23个Linux命令常用命令,让工作效率翻倍
  4. Javascript中的类实现
  5. 虚拟机安装centos
  6. 《Webservice的应用与开发》学习笔记 ·002【XML进阶、XML Schema】
  7. Java 异常处理的 20 个最佳实践,你知道几个?| CSDN 博文精选
  8. mui调本地相册上传图片
  9. 安卓调用系统语音识别功能全解(谷歌语音服务):获取识别结果,使用语音识别进行搜索。
  10. php单列模式_PHP单例模式详解及实例代码
  11. 2020年中国办公软件行业市场现状分析,多端协作化、智能化、集成化是方向「图」
  12. /usr/bin/ssh-copy-id: ERROR: ssh: Could not resolve hostname 192.168.0.114:root/.ssh/authorized_keys
  13. Postgresql忘记密码,如何重置密码
  14. 如何下载微信公众号视频
  15. 数据挖掘中所需的概率论与数理统计知识
  16. Camunda流程引擎及表结构认识
  17. 数字签名、数字信封、数字证书
  18. Windows 10上的LockApp.exe是什么?
  19. POI 导入、导出Excel
  20. 美乐:用优雅的方式赚钱 感性的方式做音乐

热门文章

  1. 这篇文章终于把中美德三国的工业互联网讲清楚了
  2. 【分享】参加一个0元小白理财训练营开营第1天的学习笔记
  3. jacob java excel_Java使用jacob将微软office中word、excel、ppt转成pdf
  4. JAVA 去除字符串首尾特定字符
  5. 数据分析---arXiv论文数据统计
  6. 【T+】删除/取消畅捷通T+软件登录界面右上角的授权单位等联系信息
  7. 有符号整数除以无符号整数会发生什么??!!!
  8. 个人永久性免费-Excel催化剂功能第105波-批量调整不规范的图形对象到单一单元格内存储...
  9. Qt编写安防视频监控系统67-跨平台及国产系统
  10. 2022细胞生物学实验原理复习资料汇总