获取SHA-1指纹的方法与获取指纹的方法相同吗?以前,我正在运行此命令:
我不清楚我得到的结果是SHA-1指纹。有人可以澄清一下吗?
按照this教程为Google Map v2创建SHA1指纹
对于调试模式:
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
对于发布模式:
keytool -list -v -keystore {keystore_name} -alias {alias_name}
例:
keytool -list -v -keystore C:\Users\MG\Desktop\test.jks -alias test
从Debug Keystore我们可以获得Eclipse
中的SHA1值。从菜单访问:Window
- > Preferences
- > Android
- > Build
但它不适用于生产Keystore
。
因此,要从生产密钥库获取SHA1值,请转到:Android Tools
- > Export Signed Application Package
。按照签署apk的过程,SHA1将显示为证书。
在您的应用中使用Google Play应用签名功能和Google API集成?
如果您使用Google Play应用程序签名,则Google会重新签名您的应用。这就是Google Play App Signing提供的签名证书指纹的方式,如下所示:
阅读更多How to get Release SHA-1 (Signing-certificate fingerprint) if using 'Google Play app signing'
在Gnu / Linux中
第一
你需要key.jks,例如在我的情况下这个文件位于/ Desktop / Keys的文件夹中
/Desktop/Keys/key.jks
第二
cd /usr/lib/jvm/java-1.7.0-openjdk-amd64
现在您需要执行此命令
keytool -list -v -keystore /PATH/file.jks -alias YourAlias -storepass *** -keypass ***
替换这个字段
-keystore
-alias
-storepass
-keypass
例如
keytool -list -v -keystore /home/david/Desktop/Keys/key.jks -alias MyAlias -storepass 456 -keypass 123
祝好运!!
首先,在.jar
中有相同的fb-sdk android-support-v4.jar
文件。
然后使用以下方法生成SHA1
密钥:
PackageInfo info;
try {
info = getPackageManager().getPackageInfo(
"com.example.worldmission", PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md;
md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
String something = new String(Base64.encode(md.digest(), 0));
Log.e("Hash key", something);
System.out.println("Hash key" + something);
}
} catch (NameNotFoundException e1) {
Log.e("name not found", e1.toString());
} catch (NoSuchAlgorithmException e) {
Log.e("no such an algorithm", e.toString());
} catch (Exception e) {
Log.e("exception", e.toString());
}
keytool是一个密钥和证书管理实用程序。它允许用户使用数字签名管理他们自己的公钥/私钥对和相关证书,以用于自我认证(用户向其他用户/服务认证自己)或数据完整性和认证服务。
对于Windows
keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
其他
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
Android上的授权使用SHA1指纹和包名称来标识您的应用,而不是客户端ID和客户端密钥。
http://docs.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html
//获取SHA1的最简单方法
//将以下命令添加到终端并按Enter键
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
您可以通过访问Eclipse中的Window>Preference>Android>Build
获取任何工作空间的MD5和SHA1指纹。
所有步骤的最佳方式:
对于Release Keystore SHA1密钥:
C:\Users\hiren.patel>cd..
C:\Users>cd..
C:\>cd "Program Files"
C:\Program Files>cd Java
C:\Program Files\Java>cd jdk_version_code
C:\Program Files\Java\jdk_version_code>cd bin
C:\Program Files\Java\jdk_version_code\bin>keytool -list -v -keystore "D:\Hiren Data\My Root Folder\My Project Folder\keystore_title.jks" -alias my_alias_name -storepass my_store_password -keypass my_key_password
替换下面的东西:
jdk_version_code
D:\Hiren Data\My Root Folder\My Project Folder\keystore_title.jks
my_alias_name
my_store_password
my_key_password
完成
如果您使用的是Android Studio IDE,那么只需单击一下,即可获得SHA1对所有构建变体的价值。
在Gradle Projects窗口>选择根项目> signingReport>双击下
下一个
转到Variant:发布以供发布
转到Variant:调试以进行调试
在Windows中打开命令提示符并转到以下文件夹。
C:\ Program Files \ Java \ jdk1.7.0_05 \ bin
使用命令cd <next directory name>
将目录更改为next。使用命令cd ..
将目录更改为Prev
现在按原样键入以下命令:
keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
我正在使用Ubuntu 12.0.4,并且在生成密钥库文件后,我在命令提示符下以这种方式获取证书指纹用于发布密钥存储,如果您在应用中使用谷歌地图,则可以将此密钥用于已发布的应用,所以这释放后可以在app内正确显示地图,我在下面的命令提示符下得到了结果
administrator@user:~$ keytool -list -v -keystore /home/administrator/mykeystore/mykeystore.jks -alias myprojectalias
Enter keystore password: ******
Alias name: myprojectalias
Creation date: 22 Apr, 2014
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=xyz, OU= xyz, O= xyz, L= xyz, ST= xyz, C=91
Issuer: CN= xyz, OU= xyz, O= xyz, L= xyz, ST= xyz, C=91
Serial number: 7c4rwrfdff
Valid from: Fri Apr 22 11:59:55 IST 2014 until: Tue Apr 14 11:59:55 IST 2039
Certificate fingerprints:
MD5: 95:A2:4B:3A:0D:40:23:FF:F1:F3:45:26:F5:1C:CE:86
SHA1: DF:95:Y6:7B:D7:0C:CD:25:04:11:54:FA:40:A7:1F:C5:44:94:AB:90
SHA276: 00:7E:B6:EC:55:2D:C6:C9:43:EE:8A:42:BB:5E:14:BB:33:FD:A4:A8:B8:5C:2A:DE:65:5C:A3:FE:C0:14:A8:02
Signature algorithm name: SHA276withRSA
Version: 2
Extensions:
ObjectId: 2.6.28.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 1E A1 57 F2 81 AR 57 D6 AC 54 65 89 E0 77 65 D9 ..W...Q..Tb..W6.
0010: 3B 38 9C E1
在Windows平台上,我们可以使用以下方式获取调试模式的密钥库
C:\Program Files\Java\jdk1.8.0_102\bin>keytool -l
.android\debug.keystore -alias androiddebugkey -s
id
Alias name: androiddebugkey
Creation date: Oct 21, 2016
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: C=US, O=Android, CN=Android Debug
Issuer: C=US, O=Android, CN=Android Debug
Serial number: 1
Valid from: Fri Oct 21 00:50:00 IST 2016 until: S
Certificate fingerprints:
MD5: 86:E3:2E:D7:0E:22:D6:23:2E:D8:E7:E
SHA1: B4:6F:BE:13:AA:FF:E5:AB:58:20:A9:B
SHA256: 15:88:E2:1E:42:6F:61:72:02:44:68
56:49:4C:32:D6:17:34:A6:7B:A5:A6
Signature algorithm name: SHA1withRSA
首先去jar文件复制keytool路径然后添加到系统路径然后运行..我希望这个工作..
如果您使用的是Google Play App Signing,而不是从密钥库获取SHA,则更简单的方法是转到Google Play控制台>您的应用>发布管理>应用程序签名,然后查找您的上传证书。
对于发布版本,请在gradle中添加以下内容:
android {
defaultConfig{
//Goes here
}
signingConfigs {
release {
storeFile file("PATH TO THE KEY_STORE FILE")
storePassword "PASSWORD"
keyAlias "ALIAS_NAME"
keyPassword "KEY_PASSWORD"
}
}
buildTypes {
release {
zipAlignEnabled true
minifyEnabled false
signingConfig signingConfigs.release
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
现在像Lokesh的答案一样运行signingReport也会显示发布版本的SHA 1和MD5密钥。
对于本地,你可以从Android工作室轻松获得sha1但是对于现场请查看以下网址:
Facebook Android Generate Key Hash
我们大多没有在下面的步骤中完成,所以请检查100%正确的链接。
8) If you see in openssl Bin folder, you will get a file with the name of debug.txt
9)现在要么可以重新启动命令提示符,要么使用现有的命令提示符
10)返回C盘并给出openssl Bin文件夹的路径
11)复制以下代码并粘贴
openssl sha1 -binary debug.txt > debug_sha.txt
12)你将在openssl bin文件夹中获得debug_sha.txt
13)再次复制以下代码并粘贴
openssl base64 -in debug_sha.txt > debug_base64.txt
14)你将在openssl bin文件夹中获得debug_base64.txt
15)打开debug_base64.txt文件这是你的密钥哈希。
在ANDROID STUDIO执行以下步骤:
您将能够在IDE底部看到签名
在android studio中获取SHA1 Key的最简单方法(调试和发布模式)
Android Studio
signingReport
(您将在Run Bar中获得SHA1
和MD5
)如果您正在使用新的Android Studio,它会显示在顶部执行的时间,点击Toggle任务执行模式,您将获得SHA-1密钥。检查第2和第3参考图像。
为发布模式生成SHA-1
1-first在你的gradle How to add config in gradle中添加keystore配置。
3 - 然后按照上述步骤,您将获得发布模式的SHA-1。
与您的用户一起尝试并通过
keytool -list -v -keystore {jks文件的路径} -alias {keyname} -storepass {keypassword} -keypass {aliaspassword}
可执行程序
keytool -list -v -keystore“E:\ AndroidStudioProject \ ParathaApp \ key.jks”-alias key0 -storepass mks @ 1 -keypass golu @ 1
通过cmd转到java bin目录:
C:\ Program Files \ Java \ jdk1.7.0_25 \ bin>
现在在cmd中键入以下命令:
keytool -list -v -keystore "c:\users\your_user_name\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
运行以下命令以获取sha1:keytool -v -list -keystore "< debug.keystore path >"
如果你不知道debug.keystore
的路径,你可以通过检查debug.keystore
找到你的windows-->preferences-->android-->build
路径
我准备了一步一步的教程,以显示如何在模拟器上使用谷歌地图android v2(android 4.2.2) 看看我的博客:http://umut.tekguc.info/en/content/google-android-map-v2-step-step
我看到很多关于这个问题的帖子,所以我会保持简单+例子。
要获取用于使用Google+登录的ClientID的SHA1以及更多操作:
一般表格:
keytool -list -v -keystore <your_keystore_full_path> -alias <your_alias_name>
对于Debug,替换为debug.keystore路径,例如:
keytool -list -v -keystore C:\Users\DAVID\.android\debug.keystore -alias androiddebugkey
密码:android
对于Release,请替换为您的密钥库路径和别名密码,例如:
keytool -list -v -keystore C:\ProjectsData\keystore\my-release-key.keystore -alias alias_name
密码:您的别名密码。