需求背景
需要测试多台设备的兼容性,一个一个安装效率比较低,所以需要批量进行安装。
设备信息
windows,android
实现方式
通过bat脚本的形式实现
目录结构
把脚本和apk都放在同一个目录下,目录最好不要有中文
adb_install.bat:执行安装的脚本
apks.txt:储存apk信息的文件(是第一次执行脚本后自动生成的)
devices.txt:存储设备信息(是第一次执行脚本后自动生成的)
multi_install.bat:执行脚本(运行的时候直接双击运行就ok)
apks:多个apk放在同一目录下就可以
脚本内容
adb_install.bat
@echo off
echo --------------start install apks to %1--------------------
for /f %%i in (apks.txt) do (
echo install %%i to %1...
adb -s %1 install -r %%i
)
echo -----------------%1 finished install----------------------
multi_install.bat
@echo off
echo ------------multi install apks start--------------------
echo get all devices...
adb devices > devices.txt
echo get all apks...
dir *.apk /b > apks.txt
for /f "skip=1 tokens=1 delims=\r" %%i in (devices.txt) do (
echo Installing on device: %%i
start adb_install %%i
)
exit
命令解释
- adb devices命令列出所有已连接的设备,并将结果重定向到devices.txt文件
- 脚本获取当前目录下所有APK文件的名称,并将其写入到apks.txt文件
- 读取devices.txt并尝试逐个安装APK到设备上
skip=1 表示跳过第一行,因为第一行是:“List of devices attached”
tokens=1指定了只取每一行的第一个标记(即设备ID部分)
delims=\r则是考虑到每一行是以回车符(\r)结束的 - 执行adb_install.bat安装apks中的应用到所有设备
apks.txt
devices.txt
使用步骤
- 确保设备已经通过adb连接上(adb devices命令能够检测到设备)
- 将所需安装的apk文件放置与脚本同目录下
- 双击执行multi_install.bat即可