1、静默安装及静默卸载必须获得系统root权限,本次卸载采用命令的方式进行卸载,由于android底层是linux系统,所以运行的命令为linux命令:2、进行卸载的apk必须有root权限并且和系统签名一致;3、在源码中找到签名文件:共有三个文件platform.pk、platform.x509.pem、signapk.jar在android源码\build\target\product\security中找platform.pk8和platform.x509.pem两个文件在android 编绎目录out下找到 signapk.jar 这个包4、将上面上个文件复制出来放在一个单独的文件夹中5、静默卸载核心代码:(1)// 与linux命令交互方法public static String readConsole(String cmd, Boolean isPrettify) {StringBuffer cmdout = new StringBuffer();Process process = null;try {process = Runtime.getRuntime().exec(cmd);InputStream fis = process.getInputStream();BufferedReader br = new BufferedReader(new InputStreamReader(fis));String line = null;if (isPrettify == null || isPrettify) {while ((line = br.readLine()) != null) {cmdout.append(line);}} else {while ((line = br.readLine()) != null) {cmdout.append(line).append(System.getProperty("line.separator"));}}} catch (IOException e) {e.printStackTrace();} finally {process.destroy();}return cmdout.toString().trim();}(2)卸载代码:需要调用(1)中的方法// 卸载方法,参数为将要卸载的apk的包名public void UninstallAPK(String packageName) {//获取root权限String su = readConsole("su", true);System.out.println("-----su-" + su);//获取读写权限String remount = readConsole("mount -r -w -o remount -t ext4 /dev/block/sda6 /system ", true);System.out.println("-----remount-" + remount);//卸载String uninstall = readConsole("pm uninstall " + packageName, true);System.out.println("---------uninstall-" + uninstall);}(3)安装代码:public void install(){//获取root权限String su = readConsole("su", true);System.out.println("-----installsu-" + su);//获取读写权限String remount =readConsole("mount -r -w -o remount -t ext4 /dev/block/sda6 /system ",true);System.out.println("-----installremount-" + remount);//进行安装String uninstall =readConsole("pm install -r " + apkAbsolutePath, true);System.out.println("---------install-" + uninstall);}6、清单文件所需要配置的权限:sharedUserId="android.uid.system"7、用Eclipse生成apk(如PMDemo.apk),将apk和4中拷贝出来的文件放在同一个文件夹中,用rar文件打开apk文件,进入META-INF目录下,将CERT.SF和CERT.RSA这两个文件删除掉,然后在命令行中执行以下命令:然后在dos下进入新建的文件目录执行下列命令:java -jar signapk.jar platform.x509.pem platform.pk8 PMDemo.apk NewPMDemo.apk 8、将NewPMDemo push进/System/app目录,重启开发板即可。