Android
CircleCI
CircleCIDay 11

CircleCI で Android アプリをビルドする時のTIPS

More than 3 years have passed since last update.


Android アプリをビルドするには

基本、circle.yml に設定を記載するだけです。


ビルド設定ファイル サンプル


circle.yml

general:

artifacts:
- ./app/build/outputs/apk/
machine:
java:
version: oraclejdk7
environment:
ANDROID_HOME: /usr/local/android-sdk-linux
test:
override:
- echo "Nothing to do here"
post:
- ./gradlew compileDevelopReleaseSources
deployment:
upload:
branch: [master]
commands:
- ./gradlew assembleDevelopRelease
- ./gradlew uploadDeployGateDevelop
- ./gradlew assembleProductRelease
- ./gradlew uploadDeployGateProduct


build.grade

apply plugin: 'com.android.application'

apply plugin: 'deploygate'

android {
...
signingConfigs {
release {
storeFile file('../release.keystore')
storePassword System.getenv('STORE_PASSWORD')
keyAlias System.getenv('KEY_ALIAS')
keyPassword System.getenv('KEY_PASSWORD')
}
}
...
}

...
deploygate {
userName = System.getenv('DEPLOYGATE_USERNAME')
token = System.getenv('DEPLOYGATE_API_KEY')

apks {
product {
sourceFile = file("./build/outputs/apk/app-product-release.apk")
}
develop {
sourceFile = file("./build/outputs/apk/app-develop-release.apk")
}
}
}
...



TIPS 集


共通設定


  • JDK の設定は Oracle JDK 1.7 を使う


  • artifacts は設定しておくと、あとから CircleCI の Webページからapkをダウンロードできる


keystore 関連


  • keystore ファイルは GitHub リポジトリに含める(※非公開リポジトリの場合)

  • key alias と key password は CircleCI の Environment variables に設定する




デプロイ関連


  • DeployGate 使うのがおすすめ


    • gradle plugin があるのでそれを使う

    • DeployGate の API KEY も Environment variables に設定する




もっとわかりやすいドキュメントないの?

日本語の情報が不足していますので、英語のものも併せて確認するのがよいと思います