公開用に作成した keystore をデバッグで使うには

公開用に作成した keystore をデバッグで使うには

Android のアプリは公開するためには
keystore ファイルの作成と
それによる電子署名が必要

そしてすでに公開しているアプリをデバッグするには
この keystore ファイルでデバッグすることになる

これをやらないと Google Map のアプリの場合
地図が表示されなかったりするので注意

Eclipse での設定方法は
window > Preferences
で設定画面がでるので

Android > Build

Custom debug Keystore の設定を行う
ここで Browse をクリックして
公開に使用した keystore ファイルを指定

keys

しかし
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 の警告がでてきます

keys2
どうやら debug に使うキーストアが変更されたため
以前のアプリをアンインストールし
新しい状態でインストールしますか?
と聞かれているので
yes

これで、表示されなかった地図も無事に表示されるようになりました

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です