Android Studio 1.0で使用するdebug用アプリ署名ファイルについて


Androidアプリを新規に開発する際は、従来のEclipseではなく、Android Studioを使っている。

ふと、デバッグ用のアプリ署名に使うdebug.keystoreはどこにあるのか?を調べて見て気づいたことがあったので、共有します。

結果から言うと、Eclipse時代と同じ、$home/.android/debug.keystore であることがわかりました。

で、何でこんなことを調べていたのかというと、debug.keystoreファイルの日付が365日経過しているにも関わらず、使えているので、これは、違うところを参照しているに違いないという思い込みだったのです。

開発ツールインストールした際に、debug.keystoreが生成される訳ですが、いつの間にかに有効期限が作成日の30年後になっていたのです。Androidが1.6の頃からアプリを作っているのですが、その当時のdebug.keystoreの有効期限が365日だったので、1年経つとコンパイルできないという内容がMLに流れていました。

有効期限の調べ方
keytool -list -v -keystore debug.keystore
で、パスワードを聞かれるので、『android』と入力すると見れたりします。

Keystore type: JKS
Keystore provider: SUN

Your keystore contains 1 entry

Alias name: androiddebugkey
Creation date: Jan 28, 2015
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 1d088b0f
Valid from: Wed Jan 28 12:10:27 JST 2015 until: Fri Jan 20 12:10:27 JST 2045
Certificate fingerprints:
MD5: 60:B5:6C:3D:E3:43:00:3F:FB:11:B7:6A:C4:C7:CF:7C
SHA1: 90:EB:38:08:DA:BF:CA:D6:EF:01:9F:D0:78:F3:31:3E:1B:A7:BC:B6
SHA256: 77:D6:F8:6D:26:B9:BE:12:17:1D:43:B7:63:9E:97:04:93:04:B7:F1:F0:0C:7B:1D:9E:08:43:0A:B8:52:4A:DE
Signature algorithm name: SHA256withRSA
Version: 3

Extensions:

#1: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 2F A2 4F 05 0D F5 36 2E 55 E5 12 FB 77 6B B6 5B /.O…6.U…wk.[
0010: 6D 9C A0 E9 m…
]
]

*******************************************
*******************************************