使用shell脚本批量执行adb命令,卸载安装apk

一、业务场景

  需求:有两个apk需要安装到指定的机器上(android系统)进行调试。每次有新设备或者需要安装包或者有新包需要替换老包的时候都需要执行四次命令(adb install 安装包名,adb uninstall 包名),非常麻烦。所以就想写一个脚本可以时间一键安装卸载指定的apk包。因此就有了下面这一串代码。

  这一串代码的具体作用是,先卸载指定的安装包(可以是多个),然后再批量安装指定的apk。

  

二、具体脚本代码

#!/bin/bash
    
#adb install cmd
    adb root
    adb remount
    #将字符串用空格隔开,使用for循环,循环安装
    for package_name in 包名1 包名2;
    do
        # 执行adb卸载命令
        adb uninstall $package_name
        # 打印已卸载的包名
        echo "卸载成功"
    done

    sleep 3s

    #安装代码
    #adb install cmd
    install="adb install -r "
    
    #app file
    target=".apk"
    
    #enter shell folder
    basefolder=`dirname $0`
    cd $basefolder
    
    #list all file
    for file in $(ls)
    do
        # find fileName contain target and install it.
        result=$(echo $file | fgrep "${target}")
        if [[ "$result" != "" ]]
        then
            $install $file
        fi
    done
原文地址:https://www.cnblogs.com/tony-yang-flutter/p/15224105.html