如何将apk安装到多个连接的设备上?

2022-08-31 17:46:16

我有 7 台设备插入到我的开发计算机中。

通常,我这样做并且可以仅安装到单个设备上。adb install <path to apk>

现在我想在我的所有7个连接的设备上安装我的apk。如何在单个命令中执行此操作?我也许想运行一个脚本。


答案 1

您可以使用 来获取已连接设备的列表,然后为列出的每个设备运行。adb devicesadb -s DEVICE_SERIAL_NUM install...

像这样(bash):

adb devices | tail -n +3 | cut -sf 1 -d " " | xargs -iX adb -s X install ...

评论表明,这可能更适合较新版本:

adb devices | tail -n +2 | cut -sf 1 | xargs -iX adb -s X install ...

对于 Mac OSX(未在 Linux 上测试):

adb devices | tail -n +2 | cut -sf 1 | xargs -I {} adb -s {} install ...

答案 2

其他答案非常有用,但并没有完全满足我的需求。我想我会发布我的解决方案(一个shell脚本),以防它为其他读者提供更清晰的信息。它可以安装多个apk和任何mp4

echo "Installatron"

for SERIAL in $(adb devices | tail -n +2 | cut -sf 1);
do 
  for APKLIST in $(ls *.apk);
  do
  echo "Installatroning $APKLIST on $SERIAL"
  adb -s $SERIAL install $APKLIST
  done

  for MP4LIST in $(ls *.mp4);
  do
  echo "Installatroning $MP4LIST to $SERIAL"
  adb -s $SERIAL push $MP4LIST sdcard/
  done
done

echo "Installatron has left the building"

谢谢你所有其他的答案,让我走到了这一步。


推荐