Android MapViewで使用するapiKeyの共有
MapViewを使用したプログラムでは、apiKeyが必要になります。
このapiKeyは、Android Maps API Key Signupサイトにて取得する必要があります。
証明書の作成方法や、apikeyの設定方法に関しては詳しいSDKドキュメントがあるのでそちらを参照してください。
実際には、エミュレータで動作するためのapiキーと、Android Market等にリリースする時に使用するapiキーの2つを取得する必要があります。
このため以下の2点について考える必要があります。
- グループで開発する時にどのようにapikeyをハンドルするか
- リリース時にリリース用apikeyに変更するのを忘れないようにする
グループで開発する時にどのようにapikeyをハンドルするか
開発中は、自動的に作成された、debug.keystoreを使用しています。 (debug.keystoreに関しては、Android 電子署名1にも記載してあります。) debug.keystoreは、SDKのインストール後に作成をするため、グループ内のAさんとBさんでは違った物になります。デバック用のMapView用のapikeyを取得するには、debug.keystoreが必要ですから、AさんBさんそれぞれのデバック証明書を用いてapikeyを取得する必要があります。
この時の問題は
- めんどくさい
- ソースコードは、もちろん構成管理ソフトで共有しているわけですから、各々がlayout.xmlのapikeyの値を書き換える必要がある
- エミュレーター上のテスターによるテストにもapikeyが必要 -> めんどくさい
この「メンドクサイ」を解決するには、debug.keyを共有してしまうのが一番です。
やり方は、アプリケーションもしくは、社内でデバック用に共有するdebug.keyを作成し、開発者のEclipseのdebug keyを入れ替えてしまうといった方法です。
設定場所は、Windows > Prefs > Android > Build。下記画像のDefault debug keyのファイルを共有用debug.keyで上書きをします。。
上記画像の一番下に、「Custom debug key」を参照する場所があります。ここに共有するdebug.keyを設定することもできるみたいなのですが、色々やってみましたが現在できませんでした。 ADTのソースも公開されていますから、ソースを見ていけばわかるのでしょうが、そこまで調査するのはやめました。「Custom debug key」項目の仕様がわかったらまたブログに書いていきたいと思っています。




コメント
参考にさせて頂いて、大変助かりました。
下の環境では、Custom debug keyに設定したdebug.keystoreが有効になりましたのでお伝えします。
・eclipse 3.5
・eclipseのandroidのプラグイン 0.9.6.v201002051504-24846
・AndroidSDK ver5
投稿者: あっきー | 2010年04月14日 18:22
こんにちは
お役にたったようでなによりです。
ADTもこの頃に比べて便利になりました!
投稿者: がく | 2010年04月15日 18:15