在eclipse下单击一下,在多个设备上安装并运行应用程序

ol_*_*_er 19 eclipse android adb

我想知道是否有一种方法可以在Eclipse下单击一下在多个设备/模拟器上安装和运行Android应用程序.

当我在多个(n)设备上测试布局时,我现在正在进行n次运行(实际上是ctrl-F11快捷方式),选择正确的设备,然后在每个设备上检查我的布局.

在连接到我的计算机的所有设备上使用单个命令安装和启动会很棒.

这样的事情存在吗?

小智 47

如果您使用eclipse,请执行以下操作:

  1. 打开"项目属性"对话框.
  2. 在"运行/调试设置"下,选择您的项目并进行编辑.
  3. 弹出另一个对话框,选择"目标"选项卡,选择"在所有兼容的devics/AVD上启动".

  4. 应用,您应该在运行/调试时安装所有设备.


Ale*_*dam 10

最简单的方法是使用包含多行的批处理文件(或shell脚本)

adb -s SERIAL_NO install workspace/YOUR_PROJECT/bin/YOUR_APK.apk
Run Code Online (Sandbox Code Playgroud)

确保将Eclipse设置为自动构建项目.然后,它不是一键,而是关闭:

  • Ctl-Shift-S保存全部,
  • Alt-TAB进入命令提示符,
  • 向上箭头输入以重新运行脚本.
  • 请享用.5秒上衣;)


ol_*_*_er 5

我刚刚完成了Aleadam建议我做的脚本.

通过安装和启动连接到计算机的每个设备上的简单循环.

脚本和安装:

#!/bin/bash

if [ $# -lt 3 ] ;then
    echo "usage $0 pathToTheFileToInstall packagename fullPackageActivityName"
    exit 1
fi

FILEPATH=$1
PACKAGE=$2
ACTIVITYNAME=$3

APK=`ls $FILEPATH/*.apk`

installOnSingleDevice(){
    echo "Installing on $DEVICE -------"
    echo "adb -s $1 install -r $APK"
    adb -s $1 install -r $APK 

    echo "adb -s $1 shell am start -n $2/$3"
    adb -s $1 shell am start -n $2/$3
    echo "--------------------------"
}

if [ $? -eq 0 ] ;then
    adb devices | grep device | grep -v attached | cut -f 1 > tmpfile
    while read line; 
    do 
        installOnSingleDevice $line $PACKAGE $ACTIVITYNAME&
    done < tmpfile
    rm tmpfile
else
    echo "No apk at this path (${FILEPATH})"
fi
Run Code Online (Sandbox Code Playgroud)

用法示例:

andinstall ~/workspace/myapp/bin/ fr.openium.myapp fr.openium.myapp.activity.ActivitySplash
Run Code Online (Sandbox Code Playgroud)