【Android】リリース署名の設定をプロジェクト外から上書きする
GitHubでソースを公開していてリリース署名の設定をしたい場合、公開用にはダミーの署名を置き、手元ではそれを上書きしたい。かつ git status
でnot stagedのところに上書き内容がいちいち出ないようにプロジェクト外から上書きしたい。
gradle.properties
は プロジェクト直下/gradle.properties
が先に読まれ、次に ~/.gradle/gradle.properties
が読み込まれるためプロジェクト外から値を上書きできる。
app/build.gradle
変数を囲むのはダブルクオーテーションじゃないと動かない。
android { .... signingConfigs { release { keyAlias "$RELEASE_KEY_ALIAS" storeFile file("$RELEASE_STORE_FILE_PATH") keyPassword "$RELEASE_KEY_PASSWORD" storePassword "$RELEASE_STORE_PASSWORD" } } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' signingConfig signingConfigs.release } } ... }
プロジェクト直下のgradle.properties
dummy-release-keyはapp以下に置く
RELEASE_KEY_ALIAS=key RELEASE_STORE_FILE_PATH=dummy-release-key RELEASE_KEY_PASSWORD=testtest RELEASE_STORE_PASSWORD=testtest
そして ~/.gradle/gradle.properties
に本当のリリース署名の設定を書く。