龙空技术网

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

jianjianpp 81

前言:

而今咱们对“cmd静默安装命令”大致比较关怀,咱们都想要了解一些“cmd静默安装命令”的相关文章。那么小编在网络上汇集了一些对于“cmd静默安装命令””的相关内容,希望兄弟们能喜欢,朋友们一起来学习一下吧!

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”命令。

标签: #cmd静默安装命令 #cmd静默安装