android 静默安装

       android实际的自动化测试中,应用的整个测试过程中,我们可能都不要人为的手动干预,譬如apk的安装,我们希望它静默安装,不要人手动去确认等。

       如果大家看过我第一篇的文章ADB技能使用初级篇(上),相信大家还记得里面有个pm 命令,接下来我们看看如何通过它实现我们的静默安装功能。

      首选需要我们的手机要有root权限,具体的命令如下

      adb shell pm install -r path

      path :apk在sdcard中的绝对地址

      这样就我们可以静默安装sdcard中的APK了,但是这种方式只能,使用大部分手机,有的手机还是无法进行静默安装,最常见的手机例如小米等。那怎么办呢,我们可以使用其他方式来配合这个命令。

     1.cp命令,使用cp 命令将APK拷贝到/data/app 目录下,此目录是存放所有已经安装的apk信息,这样也可以实现静默安装。

     2.cat命令,如果你的运气不那么好,你的手机不支持cp命令,可以使用cat命令替代

     代码实现

 String cmd[] = {
                    "pm install -r " + path,
                    "cp -f \"" + path + "\" /data/app",
                    "cat \"" + path + "\" > \"/data/app/" + name + "\""
            };
            Process process = Shell.execShells("su", cmd);

public static Process execShells(String cmdTag, String commands[]) throws  IOException {
        Process process = Runtime.getRuntime().exec(cmdTag);
        if (commands != null) {
            OutputStream output = process.getOutputStream();
            for (int i = 0; i < commands.length; i++) {
                if (commands[i] != null) {
                    output.write(commands[i].getBytes());
                    output.write("\n".getBytes());
                }
            }
            output.close();
        }
        return process;
    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值