BuildConfigを使用して、環境ごとに値を取得仕分けてみる

はじめに


WebAPIと連携するようなAndroidアプリを作っているのですが 開発と本番で接続先を切り替える必要が出てきました。

それのライトな対応方法をメモ

build.gradleを編集


以下のような形で記載

1
2
3
4
5
6
7
8
buildTypes {
  debug {
    buildConfigField "String", "API_URL", "\"http://api-dev.hoge.co.jp\""
  }
  release {
    buildConfigField "String", "API_URL", "\"http://api.hoge.co.jp\""
  }
}

ソースコード側


以下のように特に気にせずBuildConfigを参照すればよい

1
String url = BuildConfig.API_URL

ビルド環境に応じた値が取得できる

できたけど・・・


これぐらいなら、まぁbuild.gradleでいいやという気がするもののパラメータ増えたら収拾つかなくなる予感

真面目にやるならBuild Variantsを使うほうがよいかと思います