【メモ】Androidアプリを署名するためのキーストアを「keytool」で操作


Androidアプリの配布時には、ウィザードに従いバイナリを署名するのですが、その時によくわからずキーストアをたくさん作ってしまって収集がつかなくなることもあるのではないでしょうか。私もそうですw。

実はJDKのbinフォルダにあるkeytoolコマンドを利用して、キーストアを管理することが出来ます。

私は以下の手順で、複数のキーストアに散らばったキーを1ファイルのキーストア内にまとめました。

1. キーストア内のキーの名前を変更して、名前がかぶらないようにする。

$ keytool -keystore C:\KeyStoreFile -changealias -alias FROM_NAME -destalias TO_NAME

このコマンドで、C:\KeyStoreFile内のキー「FROM_NAME」が「TO_NAME」に名称変更されます。

2. マージ先のキーストアを1個決めて、そのキーストアに他のキーストアをマージする

$ keytool -importkeystore -srckeystore C:\SourceKeyStoreFile -destkeystore D:\DestKeyStoreFile

このコマンドで、C:\SourceKeyStoreFile内の全てのキーがD:\DestKeyStoreFile内にコピーされます。

その他キーストアやキーのパスワード変更など、結構便利な処理が出来ます。詳しくはこちらをどうぞ。

keytool – 鍵と証明書の管理ツール