くらげになりたい。

くらげのようにふわふわ生きたい日曜プログラマなブログ。趣味の備忘録です。

AndroidStudioでRelease用とDebug用のresを使い分ける

外部APIを使うAndroidの開発しているデバッグ用のAPIキーとリリース用のAPIキーを分けてたい時がある。

いちいち手で変えてたけど、Build Variantによって使うリソースファイルを変更できるらしい!

そのの備忘録。

環境はいつもどおり、Ubuntu14.04 64bitのAndroidStudio1.0 RC2。

ディレクトリ構成

AndroidStuidoのディレクトリ構成はこんな感じ。

ポイントは、app/src配下にdebugディレクトリを作って、置き換えたいリソースファイルを配置するだけ!

MyApp/
├── MyApp.iml
├── app
│   ├── ...
│   └── src
│       ├── ...
│       ├── debug
│       │   └── res
│       │       └── values
│       │           └── strings.xml
│       └── main
│           ├── AndroidManifest.xml
│           ├── assets
│           ├── java
│           └── res
│               ├── drawable
│               ├── layout
│               ├── menu
│               └── values
│                    └── strings.xml
└── ...

それぞれのstrings.xmlはこんな感じ

main/res/values/strings.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="api-key">リリース用のAPIキー</string>
</resources>

debug/res/values/strings.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="api-key">デバッグ用のAPIキー</string>
</resources>

あとは、Build Variantを切り替えるだけで、

  • debugのときは「debug/res/values/strings.xml」を
  • releaseのときは、「main/res/values/strings.xml」を

使ってapkを作ってくれる!

これで、手作業でやってたことが自動化できる〜やった!

参考にしたサイト様