公開用に作成した keystore をデバッグで使うには
Android のアプリは公開するためには
keystore ファイルの作成と
それによる電子署名が必要
そしてすでに公開しているアプリをデバッグするには
この keystore ファイルでデバッグすることになる
これをやらないと Google Map のアプリの場合
地図が表示されなかったりするので注意
Eclipse での設定方法は
window > Preferences
で設定画面がでるので
Android > Build
で
Custom debug Keystore の設定を行う
ここで Browse をクリックして
公開に使用した keystore ファイルを指定
しかし
Keystore was tampered with, or password was incorrect
とエラーがでてしまう
理由を調べた結果
デバッグに使うパスワードが android でないとダメ
ということ
これを元に検索した結果
Android:商用署名(キーストア)をデバッグ用に変更する手順
http://yuki312.blogspot.jp/2013/05/android.html
によると
Eclipse ADT で使えるデバッグキーストアの条件は
keystore のパスワードが android
エイリアスが androiddebugkey
エイリアスパスワードが android
であることとのこと
このため keytool コマンドでこれらの条件を満たすように変更します
なお、念のため別のディレクトリにコピーしてから
行うようにします
mkdir android_release_debug cp snowpool.keystore android_release_debug/ cd android_release_debug/
これでコピーしたので、失敗したらやりなおしできる
まずは keystore のパスワード変更
keytool -storepasswd -keystore snowpool.keystore
これで最初に今のパスワードを入力し
次に 変更するパスワードに android を入力
次にエイリアスを変更
keytool -changealias -alias snowpoolkey -keystore snowpool.keystore
これで最初に 新しいエイリアスを入力するので
androiddebugkey
次に キーストアのパスワードを聞かれるので
android
最後に鍵パスワードを入れるけど
これは keystore ファイルをつくったときんパスワードで android ではないので注意
次にエイリアスパスワードの変更
keytool -keypasswd -alias androiddebugkey -keystore snowpool.keystore
最初にキーストアパスワードを入力するので androidを入力
次に現在の鍵パスワードを入力するので
keystore ファイルを作成したときのパスワードを入力
新しい鍵パスワードを聞かれるので
android
を入力
これで設定完了すれば
Custom debug keystore にセットするときに
エラーがなくなり
MD5 fingureprint
SHA1 fingureprint
にも自動的に値が入力されます
これで再度アプリを実機デバッグすると
Application Install の警告がでてきます
どうやら debug に使うキーストアが変更されたため
以前のアプリをアンインストールし
新しい状態でインストールしますか?
と聞かれているので
yes
これで、表示されなかった地図も無事に表示されるようになりました