Android で Google Cloud Endpoint を使う時のデバッグ版とリリース版の Client ID を切り替える方法
先に書いた、Google Maps M2 API for Android では、デバッグ版とリリース版で同一の API key が使えたけ。だけど、Cloud Endpoint の Client ID を設定するところは、複数の SHA1 を書けるようになってないので、別々の Client ID を生成するしかない。
なので、これはコード上で切り替えるようにする。
gen フォルダに自動的に生成される BuildConfig クラスの DEBUG フィールドを参照して、static initializer で String型の final値を設定する。
public class Ids { pubilc static final String WEB_CLIENT_ID = "Client ID for web applications の値"; public static final String ANDROID_CLIENT_ID; static { if (BuildConfig.DEBUG) { ANDROID_CLIENT_ID = "デバッグ版の Client ID for installed applications の値"; } else { ANDROID_CLIENT_ID = "リリース版の Client ID for installed applications の値"; } }