是否有可能安装apk文件,如果多个模拟器/设备连接
我知道如何通过命令提示符将apk文件安装到模拟器中。 但我想知道是否有可能通过给任何具体的名称安装相同的apk文件到多个模拟器? 其实我必须testing一个apk文件到很多设备。 为此我开始了许多设备。 我知道如何安装它。 如果所有设备都打开,那么它将无法安装。 那么是否有任何其他的安装apk文件,通过给任何特定的设备模拟器ID或任何名称??? 请帮助我,如果有任何想法。 。 。 谢谢。
不,你不能,但你可以在一个特定的设备上安装apk
在命令typesadb设备
//设备列表及其唯一的ID
然后键入adb -s“deviceIDfromlist”安装path+ apkName
第1步:获取设备连接到设备的所有设备
adb设备
第2步:安装到特定的设备ypu要安装
adb -s deviceId安装path+ apk
例:
步骤1:
C:\ Android \ android-sdks \ platform-tools> adb devices连接的设备列表emulator-5554设备014FD87107021017设备
第2步:
C:\ Android \ android-sdks \ platform-tools> adb -s 014FD87107021017安装C:\ Users \ user \ Documents \ appname.apk
可以在所有连接的设备上同时发出安装命令。
关键是要在独立的进程(&)中启动adb
。
我想出了以下脚本,同时在我的所有连接设备上启动安装,最后在其中每个设备上启动安装的应用程序:
#!/bin/sh function install_job { adb -s ${x[0]} install -r PATH_TO_YOUR_APK adb -s ${x[0]} shell am start -n "com.example.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER } #iterate over devices IP-addresses or serial numbers and start a job while read LINE do eval x=($LINE) install_job ${x[0]} > /dev/null 2>&1 & done <<< "`adb devices | cut -sf 1`" echo "WATING FOR INSTALLATION PROCESSES TO COMPLETE" wait echo "DONE INSTALLING"
注1: STDOUT和STDERR被抑制。 您将不会看到任何“adb install”操作结果。 如果你真的需要的话,这可能会有所改善
注2:您也可以通过提供参数来改进脚本,而不是硬编码的path和活动名称。
这样你:
- 不必在每个设备上手动执行安装
- 不必等待一个安装完成才能执行另一个安装(并行启动adb任务)
使用以下脚本在多个设备/仿真器上安装apk。
for SERIAL in $(adb devices | grep -v List | cut -f 1); do adb -s $SERIAL install -r /path/to/product.apk; done
删除-r如果你不是重新安装apk。 你也可以把“install -r /path/to/product.apk”replace成其他的adb命令,就像在一台设备上工作一样。
它适用于真实设备上的我,但我相信它也适用于模拟器。
是的,你可以在多个模拟器中安装你的apk文件,你必须在命令提示符下给出这个名字,这里是指导的链接
http://developer.android.com/guide/developing/tools/emulator.html
您可以使用USBdebugging一次安装多个设备。
在Eclipse运行 – >运行configuration – >select您的项目(左侧) – >目标 – >在所有兼容设备上启动。
所选项目将安装在所有连接的设备上