如何在Android上获取OAuth 2.0的签名证书指纹(SHA1)?
我正在尝试注册我的android应用程序,并遵循以下步骤 但是,我不确定如何获取签名证书指纹(SHA1) 我首先使用EclipseADT插件导出并创建keystore/key。 然后,我尝试了如何在Android上获取OAuth 2.0的签名证书指纹(SHA1)?,android,oauth-2.0,Android,Oauth 2.0,我正在尝试注册我的android应用程序,并遵循以下步骤 但是,我不确定如何获取签名证书指纹(SHA1) 我首先使用EclipseADT插件导出并创建keystore/key。 然后,我尝试了keytool-list keystore mykeystore.keystore,它给了我一个MD5证书指纹。我需要重做签名吗(这意味着我不能使用eclipse导出向导) 我可以先使用调试证书吗?查看您当时是否想使用Google Map,您需要MD5指纹来生成api kay以便在android应用程序中
keytool-list keystore mykeystore.keystore
,它给了我一个MD5证书指纹。我需要重做签名吗(这意味着我不能使用eclipse导出向导)
我可以先使用调试证书吗?查看您当时是否想使用
Google Map
,您需要MD5
指纹来生成api kay
以便在android应用程序中使用Google Map
如果使用JDK 1.6
,Keytool命令生成MD5
指纹;如果使用JDK 1.7
,它生成SHA1
指纹
所以,问题是,如果你想签署你的发布申请,那么请阅读
如果您想使用
谷歌地图
阅读。请在命令行中使用此选项
c:\Program Files\Java\jdk1.6.25\bin>keytool -list -v -keystore c:\you_key_here.key
对于使用OpenSSL的用户,可以通过以下方式检索SHA1指纹:
OpenSSL> dgst -sha1 my-release-key.keystore
这将导致以下输出:
打开终端(在Unix中、在MAC中)、在Windows中(cmd
)和cd
到以下(您的java)路径:
运行以下命令:
keytool -list -v -keystore C:\Users\leon\.android\debug.keystore -alias androiddebugkey -storepass android -keypass android
只需将路径更改为debug.keystore,您将获得MD5和SHA-1指纹
keytool -list -v -keystore "keyStoreName"
从应用程序密钥库所在的目录运行此命令。启动导出过程,为应用程序创建apk并使用生产密钥。最后一页显示您的SHA1和MD5证书指纹我知道这个问题已经得到了回答,但这就是我如何找到默认密钥库的签名的。在Eclipse中,如果您转到Windows->Preferences->Android->Build 试试这个: Windows---preferences---Android---build---sh1代码从此处复制如果您使用的是IntelliJ(12+?),请进入“功能表”build/Generate signed Api 填写弹出窗口后,获取“密钥存储路径”字段中的数据(例如C:\Users\user\Documents\store\store) 并在命令行中运行:
>keytool -list -v -keystore "C:\Users\user\Documents\store\store"
....
MD5: 11:C5:09:73:50:A4:E5:71:A2:26:13:E0:7B:CD:DD:6B
--> SHA1: 07:0B:0E:E8:F7:22:59:72:6A:1C:68:05:05:CF:2E:6F:59:43:48:99
SHA256: E6:CE:DA:37:C1:18:43:C1:A3:F0:9E:8F:1A:C2:69:AF:E6:41:F7:C0:18:
1D:1D:55:5D:F0:52:6C:EE:77:84:A7
...
祝你好运如果你正在使用Mac甚至Linux,只需将其复制并粘贴到终端应用程序上,你就会立即获得SHA1密钥。不需要改变任何东西
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
示例输出:
Alias name: androiddebugkey
Creation date: 17 Feb 12
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: 4f3dfc69
Valid from: Fri Feb 17 15:06:17 SGT 2012 until: Sun Feb 09 15:06:17 SGT 2042
Certificate fingerprints:
MD5: 11:10:11:11:11:11:11:11:11:11:11:11:11:11:11:11
SHA1: 11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:11:01:11
Signature algorithm name: SHA1withRSA
Version: 3
对于那些在mac上寻找keytool的用户。遵循以下步骤: 首先确保安装JavaJDK 然后在命令提示符下键入:
/usr/libexec/java_home-v1.7
它会吐出类似于:
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home
keytool与javac
位于同一目录中。即:
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/bin
在bin目录中,您可以使用keytool。我认为这将非常有效。我用了同样的方法: 对于Android Studio:
如果有人使用Android studio 单击:生成>生成已登录APK 创建一个新密钥:这将生成“.jks”文件 使用以下命令读取数据(SHA1和其他信息):
$keytool-list-v-keystorefilename.jks如果您使用的是Android Studio。您可以通过渐变任务快速获得SHA1证书指纹(调试、发布…所有构建类型!!): 签约报告 SHA1显示在消息日志中 Android插件(在gradle应用程序中配置)为默认设置创建调试模式 com.android.application 到密钥库的文件路由: HOME/.android/debug.keystore 我建议将debug.keystore附加到build.gradle。为此,请将文件debug.keystore放入应用程序文件夹,然后在gradle应用程序中添加SigningConfigs:
apply plugin: 'com.android.application'
android {
................
signingConfigs {
debug {
storeFile file("../app/debug.keystore")
storePassword "android"
keyAlias "androiddebugkey"
keyPassword "android"
}
release {
storeFile file("../app/debug.keystore")
storePassword "android"
keyAlias "androiddebugkey"
keyPassword "android"
}
}
........
}
额外:如果要创建用于发布的文件,请将文件release.keystore放入应用程序文件夹。(此示例使用相同的debug.keystore)如果您使用的是Android Studio。您不需要使用cmd提示符生成SHA1指纹。您只需创建一个具有Android Studio默认地图活动的项目。在该项目中,您可以在“值”文件夹下的google_Maps_api.xml中获取指纹。希望这对您有所帮助。:) 使用:
- 文件>打开密钥库文件
- 输入密钥库密码
- 右键单击别名>证书详细信息>SHA-1指纹
获取SHA-1发布和调试模式android studio gradle的最简单方法 我认为这将非常有效。我用了同样的方法: 对于Android Studio: 单击构建>生成已签名的APK。 您将看到一个消息框,只需单击“确定” 现在将有另一个窗口,只需复制密钥存储路径 现在打开命令提示符并转到C:\Program Files\Java\jdk1.6.0\u 39\bin>(或任何已安装的jdk版本) 类型键控工具
apply plugin: 'com.android.application'
android {
................
signingConfigs {
debug {
storeFile file("../app/debug.keystore")
storePassword "android"
keyAlias "androiddebugkey"
keyPassword "android"
}
release {
storeFile file("../app/debug.keystore")
storePassword "android"
keyAlias "androiddebugkey"
keyPassword "android"
}
}
........
}
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
compile 'com.vk:androidsdk:1.6.9'
String[] fingerprints = VKUtil.getCertificateFingerprint(this, getPackageName());
Log.d("SHA1", fingerprints[0]);
keytool -list -v -keystore <.../path/keystore.jks>
keytool -list -v -keystore /Users/Home/Projects/Keystore/myApp_keystore.jks
Enter keystore password:
Keystore type: JKS
Keystore provider: SUN
Your keystore contains 1 entry
Alias name:myApp_alias
Owner: CN=xxx, OU=xxx Dev, O=ZZZ, L=Dhaka, ST=Dhaka, C=BD
..........
Certificate fingerprints:
MD5: 12:10:11:12:11:11:11:11:11:11:33:11:11:11:11:11
SHA1: 11:44:11:11:55:11:17:11:11:66:11:11:88:11:11:77:11:11:01:11
.....................