您的位置:首页 > 编程语言 > Java开发

Android Studio 和 Eclipse 中获取SHA1详解

2016-05-17 15:04 555 查看
[align=left]签名文件keystore一般有两种:jks后缀或者keystore后缀,Android Studio中创建的为jks后缀,keytool创建的为keystore后缀,两种文件均可用于APP打包。[/align]
[align=left]开发版SHA1:是指在开发调试时,从Android Studio或者Eclipse中直接运行的APP在打包时使用了开发工具默认的开发版(debug)签名文件,开发版签名文件对应有唯一的SHA1。[/align]
[align=left]发布版SHA1:是指在提交测试或发布时,APP签名打包过程中选择的指定签名文件,一般此签名文件为开发者或者开发团队持有,与具体的开发工具无关,发布版签名文件同样也对应有唯一的SHA1。[/align]

Android Studio
[align=left]在AndroidStudio中的Terminal中使用keytool命令获取。[/align]

发布版SHA1
[align=left]前提:需要知道签名文件keystore中key的别名(非必需,可不填),keystore路径和keystore的密码。[/align]

keytool -exportcert -list -v -alias <your-key-name> -keystore <path-to-production-keystore>

复制代码
其中<your-key-name>替换为自己发布版签名文件中key的别名(非必需,如果不知道别名去掉-alias
<your-key-name>即可),<path-to-production-keystore>替换为自己发布版签名文件的完整路径,例如我的keystore文件存放在D:\ReleaseApp.jks(Windows操作系统),key别名为androidrelease,在Android
Studio中的Terminal中输入:

keytool -exportcert -list -v -alias androidrelease -keystore D:\ReleaseApp.jks

复制代码
[align=left]然后输入密码,确认正确之后回车,在证书指纹中会显示此签名文件的SHA1:[/align]



[align=left]若为keystore类型的文件同样操作即可获取。如keystore文件存放在D:\ release.keystore(Windows操作系统),key别名为release.keystore,在Android Studio中的Terminal中输入:[/align]

keytool -exportcert -list -v –alias release.keystore -keystore D:\release.keystore

复制代码
[align=left]然后输入密码,确认正确之后回车,在证书指纹中会显示此签名文件的SHA1:[/align]




开发版SHA1
[align=left]前提:签名文件keystore的别名默认为androiddebugkey,keystore默认路径为%USERPROFILE%\.android\debug.keystore(Windows操作系统下。若为Mac和Linux,此路径应该为~/.android/debug.keystore)和keystore的密码默认为android。[/align]

keytool -exportcert -list -v -alias <your-key-name> -keystore <path-to-production-keystore>

复制代码
[align=left]其中<your-key-name>替换为androiddebugkey,<path-to-production-keystore>替换为%USERPROFILE%\.android\debug.keystore(Windows操作系统下。若为Mac和Linux,此路径应该为~/.android/debug.keystore)。[/align]
[align=left]    若为Windows操作系统,在Android Studio中的Terminal中输入[/align]

keytool -exportcert-list -v -alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore

复制代码

[align=left]    若为Mac和Linux操作系统,在Android Studio中的Terminal中输入[/align]

keytool -exportcert -list -v -aliasandroiddebugkey -keystore ~/.android/debug.keystore

复制代码

[align=left]然后输入密码android,确认正确之后回车,在证书指纹中会显示此签名文件的SHA1:[/align]




####################################################################################
Eclipse
[align=left]在Eclipse中直接查看或者使用keytool命令获取。[/align]

发布版SHA1
[align=left]前提:需要知道签名文件keystore中key的别名(非必需,可不填),keystore路径和keystore的密码。[/align]

keytool -exportcert -list -v -alias <your-key-name> -keystore <path-to-production-keystore>

复制代码
[align=left]其中<your-key-name>替换为自己发布版签名文件中key的别名(非必需,如果不知道别名去掉-alias <your-key-name>即可),<path-to-production-keystore>替换为自己发布版签名文件的完整路径,例如我的keystore文件存放在D:\ReleaseApp.jks,key别名为androidrelease。进入Windows控制台在命令行中输入:[/align]

keytool -exportcert -list -v -alias androidrelease -keystore D:\ReleaseApp.jks

复制代码
[align=left]然后输入密码,回车确认正确之后,在证书指纹中会显示此签名文件的SHA1:[/align]




开发版SHA1
[align=left]第一种方法:在Eclipse(ADT)中直接查看:windows -> preferance -> android -> build。如下图示:[/align]



第二种方法:如同发布版SHA1查看一样,签名文件keystore的别名为androiddebugkey,keystore路径为%USERPROFILE%\.android\debug.ke
ed1a
ystore(Windows操作系统上)和keystore的密码为android。

keytool -exportcert -list -v -alias <your-key-name> -keystore <path-to-production-keystore>

复制代码
[align=left]其中<your-key-name>替换为androiddebugkey,<path-to-production-keystore>替换为%USERPROFILE%\.android\debug.keystore,所以进入Windows控制台在命令行中输入[/align]

keytool -exportcert-list -v -alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore

复制代码
[align=left]然后输入密码android,确认正确之后回车,在证书指纹中会显示此签名文件的SHA1:[/align]


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息