アプリ内課金のテストをしたいときなど、リリース署名アプリで実行しないとだめな場合がありますが、それだとブレークを貼ってデバッグ実行するのが、署名済みapkをエクスポートして、端末にインストールして、アプリ起動後にDDMSでプロセスにアタッチして・・・となって手順が増えて面倒!かつ、起動時の処理にブレークを貼ることが出来なくていろいろと不便です。
そこで、デバッグ証明書をリリース用証明書で置き換えます。
ただ、そのままでは使えません。
デバッグ用の情報に置き換えてやる必要があります。
#1 リリース用証明書を任意のディレクトリにコピーする。
ここでは、コピーした証明書ファイル名をmyDebug.keystoreとしたとします。
#2 ストアパスワードの変更
keytool -storepasswd -keystore myDebug.keystore
デバッグ署名に必要なパスワードは、
android
です。
#3 エイリアスの変更
keytool -changealias -alias [現在のエイリアス] -destalias androiddebugkey -keystore myDebug.keystore -storepass android
[現在のエイリアス]は、リリース用証明書に作ったエイリアス名を指定してください。
キーパスワードを聞かれるので、証明書を作ったときに指定したキーパスワードを入力します。
#4 キーパスワードの変更
keytool -keypasswd -alias androiddebugkey -keystore myDebug.keystore
最初に聞かれるのはストアパスワード(android)、次に聞かれるのが古いキーパスワード、続いて新しいキーパスワードを2回入力します。
新しいキーパスワードは、
android
です。
#5 デバッグ証明書を置き換える
・Eclipseでの方法
環境設定の「Android」-「Build」で、「Custom debug keystore」に作成したキーストアファイルを指定する。
・AndroidStudioでの方法
build.gradleに以下のように記述する。
(keystoreファイルのパスは、自分の環境に合わせて適宜変更のこと)
signingConfigs {
debug{
storePassword "android"
keyAlias "androiddebugkey"
keyPassword "android"
storeFile file('myDebug.keystore')
}
}