在Android的所有連接的設備安裝和運行apk文件我知道如何安裝,並通過CMD與此命令APK運行:通過CMD
adb install SimpleClientActivity.apk
和:
adb shell am start -n com.example.simpleclientactivity/.SimpleClientActivity
如何運行這個命令在所有連接的設備上?
在Android的所有連接的設備安裝和運行apk文件我知道如何安裝,並通過CMD與此命令APK運行:通過CMD
adb install SimpleClientActivity.apk
和:
adb shell am start -n com.example.simpleclientactivity/.SimpleClientActivity
如何運行這個命令在所有連接的設備上?
要安裝並自動啓動多種設備的應用程序,最簡單的方法是使用在我看來,在命令行和Windows批處理腳本:
<!-- language: Batch script -->
:: This five lines are used to minimize the
:: command lines directly after the start
if not "%minimized%"=="" goto :minimized
set minimized=true
start /min cmd /C "%~dpnx0"
goto :EOF
:minimized
:: Path to the ADB and to the APK file
@set ADB="D:/Android/sdk/platform-tools/adb.exe"
@set APK="D:/workspace_android/SomeApp/bin/SomeApp.apk"
:: AndroidManifest.xml: <manifest package="com.example.appname">
:: The launching activity: <activity android:name=".activities.HomeActivity">
@set ACTIVITY=at.example.appname/.activities.HomeActivity
:: Install APK on all devices
%ADB% devices | tail -n +2 | cut -sf 1 | xargs -iX %ADB% -s X install -r %APK%
:: Launch App on all devices
%ADB% devices | tail -n +2 | cut -sf 1 | xargs -iX %ADB% -s X shell am start -a android.intent.action.MAIN -n %ACTIVITY%
在我來說,我有三個設備。爲了更快地訪問一個設備,我使用了下面的代碼,而不是上面的代碼中的循環。首先,我在最快的設備上安裝並啓動應用程序,然後在第二個設備上啓動應用程序,依此類推。我相信有更好的方法,而不是使用tail,head和xargs,但我不太瞭解批處理文件,但它只是運行。 ;)
<!-- language: Batch script -->
:: NEXUS 5
:: This command reinstalls the APK on the Nexus 5 device
%ADB% devices | tail -n +2 | head -n +1 | cut -sf 1 | xargs -iX %ADB% -s X install -r %APK%
:: This command launch the application on the Nexus 5 device
%ADB% devices | tail -n +2 | head -n +1 | cut -sf 1 | xargs -iX %ADB% -s X shell am start -a android.intent.action.MAIN -n %ACTIVITY%
:: Galaxy Tab
%ADB% devices | tail -n -2 | cut -sf 1 | xargs -iX %ADB% -s X install -r %APK%
%ADB% devices | tail -n -2 | cut -sf 1 | xargs -iX %ADB% -s X shell am start -a android.intent.action.MAIN -n %ACTIVITY%
:: Optimus 3D
%ADB% devices | tail -n +3 | head -n +1 | cut -sf 1 | xargs -iX %ADB% -s X install -r %APK%
%ADB% devices | tail -n +3 | head -n +1 | cut -sf 1 | xargs -iX %ADB% -s X shell am start -a android.intent.action.MAIN -n %ACTIVITY%
使用Windows Batch腳本後,創建該文件的快捷方式。右鍵單擊該快捷方式文件並選擇屬性。您可以指定全局快捷鍵,例如STRG + ALT + F10。
只需按STRG + ALT + F10該應用將在所有設備上啓動。
這是如何工作在Windows上?你有沒有安裝任何東西(例如Cygwin)?在我的Win7機器上,這個腳本在第一行失敗,即使我刪除了第一部分尾部找不到 – simonides
這不是一個Windows批處理腳本,它是一個Linux Bash腳本(不會在Windows上工作) – BayssMekanique
可能重複的[我怎樣才能安裝apk到多個連接的設備?](http://stackoverflow.com/questions/8610733/how-can-i-adb-install-an-apk-to-multiple連接設備) – Adinia