101010

プログラミング備忘録とともに、ポエムってます。

Androidアプリをコマンドラインからビルドする | Android

f:id:araemonz:20190311004740p:plain

AndroidアプリをMacのターミナル上でコマンドからビルド実行してみたのでメモしておく。

シェルにパスを通す

emulatoradbコマンドを使えるようにするため以下のパスをシェルの設定ファイルに記述する。

# Androidビルド設定
export PATH=$PATH:/Users/xxxxx/Library/Android/sdk/platform-tools
export PATH=$PATH:/Users/xxxxx/Library/Android/sdk/emulator/

xxxxxはユーザー名となる。

エミュレータの名前を確認する

$ emulator -list-avds
Nexus_5X_API_28
Tablet_API_26_Memory_256MB

エミュレータ起動

新しいターミナルを立ち上げてemulatorを起動させる

$ emulator -avd Nexus_5X_API_28

ビルド実行

プロジェクトのルートディレクトリへ移動する。

Dependenciesを解決するために一度だけ実行。

$ ./gradlew check

デバッグバージョンをビルドする。

$ ./gradlew --offline assembleDebug

エミュレータへapkをインストールする。

$ adb install -r ./app/build/outputs/apk/debug/app-debug.apk

インストールしたアプリをランチする。

$ adb shell am start -n com.apppppp.trybutton/.MainActivity

または、

$ adb shell monkey -p com.apppppp.trybutton -c android.intent.category.LAUNCHER 1

のように書ける。 package名はすべて小文字になるので注意すること。

ビルドからランチまでワンライナーで次のように書ける。これをaliasに設定すれば便利かもしれない。

$ ./gradlew --offline assembleDebug && adb install -r ./app/build/outputs/apk/debug/app-debug.apk && adb shell monkey -p com.apppppp.trybutton -c android.intent.category.LAUNCHER 1

参考