【转载】更详细信息请访问:http://blog.csdn.net/jdsjlzx/article/details/52144870
Android应用开发的时候会经常使用到第三方SDK,例如地图、推送、支付以及分享等。而这些第三方服务SDK为了应用不被滥用都会有签名验证机制。我们通过上传Android应用的签名来在服务端配置以验证应用的合法性。本文将讲述下在Android Stduio中常用的签名操作。
默认KeyStore
默认KeyStore存储路径
在Android Stduio中系统默认内置了一个签名文件debug.keystore
,用于我们在debug下的默认App签名。如果没有在Gradle文件中特殊指定,那么Android Studio将自动使用默认的debug.keystore
文件为项目App生成Debug版本的签名。
-
在Mac/Linux系统中,
debug.keystore
文件默认储存在~/.android/
路径下。 -
在Windows系统中,
debug.keystore
文件将默认存储在C:\Users\{USERNAME}\.android\
路径下。
获取默认KeyStore SHA-1
知道了Android Stduio 默认的debug.keystore
之后,下一步我们将是要获取其指纹信息,以便于在第三方服务配置中填入Debug指纹信息。
- 在Linux/Mac系统中,打开终端并输入以下命令:
1
| keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
|
- 在Windows系统中,在CMD中输入以下命令:
1
| keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
|
回车执行之后,你将会看到类似下面的debug.keystore
输出提示:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | 别名: androiddebugkey 创建日期: 2015-11-18 条目类型: PrivateKeyEntry 证书链长度: 1 证书[1]: 所有者: CN=Android Debug, O=Android, C=US 发布者: CN=Android Debug, O=Android, C=US 序列号: b15af1 有效期开始日期: Wed Nov 18 07:18:45 CST 2015, 截止日期: Fri Nov 10 07:18:45 CST 2045 证书指纹: MD5: FE:A1:9C:02:71:A2:DA:F9:7F:1C:2B:61:D7:65:89:44 SHA1: 01:DF:58:7D:04:3E:76:B5:92:98:37:0E:DD:70:61:01:70:F5:C9:8E SHA256: 84:18:44:C2:BD:AD:5D:A8:88:A1:96:EF:A6:27:86:0A:36:44:31:38:F2:5F:B6:4E:F1:10:EE:93:D6:22:CD:59 签名算法名称: SHA256withRSA 版本: 3 扩展: |
我们将其中的证书指纹填入到第三方服务DEBUG配置中即可。当然了,有的时候出于这样或者那样的原因考虑,我们并不想使用系统默认的KeyStore或者就想自己生成一个新的KeyStore,Debug环境与Release环境都使用同一个来减少配置的麻烦。这个时候我们就需要创建一个新的KeyStore文件了。