获取SHA-1指纹的方法是否与获取指纹的方法相同?以前,我运行以下命令:
我不清楚我得到的结果是否为SHA-1指纹。有人可以澄清吗?
获取SHA-1指纹的方法是否与获取指纹的方法相同?以前,我运行以下命令:
我不清楚我得到的结果是否为SHA-1指纹。有人可以澄清吗?
Answers:
请按照本教程为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
在Windows上,当找不到keytool命令时,转到已安装的JDK目录(例如)
<YourJDKPath>\Java\jdk1.8.0_231\bin\
,打开命令行,然后尝试使用上述命令进行调试/发布模式。
如果您使用的是Android Studio,请使用简单的步骤
Tasks
树android
-> signingReport
并查看魔术如果Android Studio <2.2,则在“运行”选项卡下显示结果
从android studio 2.2开始,
结果将在“运行”控制台下可用,但使用突出显示的切换按钮
或者
Second Way是
在android studio中新建项目-> Google Maps Activity
在Android Studio中同时获取SHA1密钥的最简单方法(调试和发布模式)
Android Studio
signingReport
(您将在运行栏中获得SHA1
和MD5
)如果您使用的是新的Android Studio,它会显示执行时间,然后单击“切换”任务执行模式,您会得到SHA-1键。检查第二和第三参考图像。
为发布模式生成SHA-1
1-首先在gradle中添加keystore配置如何在gradle中添加配置。
3-然后按照上述步骤操作,您将获得SHA-1的释放模式。
运行以下命令以获取sha1:keytool -v -list -keystore "< debug.keystore path >"
如果您不知道的路径debug.keystore
,则可能会找到debug.keystore
通过检查以下内容路径windows-->preferences-->android-->build
我准备了分步教程,以展示如何在模拟器(android 4.2.2)上使用google map android v2
看看我的博客:http : //umut.tekguc.info/zh/content/google-android- map-v2-step-step
我看到了很多有关此问题的帖子,因此我将使其简单易懂并附带示例。
要获取SHAID for ClientID,以便通过Google+登录并执行其他操作:
一般形式:
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
密码:您的别名密码。
简单的解决方案...
请按照以下步骤操作。3.展开:app模块->任务-> Android->签名报告。
@安比布尔
在您的应用中使用Google Play应用签名功能和Google API集成?
如果您使用Google Play应用签名,则Google会对您的应用重新签名。这就是Google Play应用签名提供您的签名证书指纹的方式,如下所示:
在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密钥:
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
完成
您可以通过在Eclipse中转到任何工作区来获取MD5和SHA1指纹。 Window>Preference>Android>Build
如果您使用的是Android Studio IDE,则只需单击一下即可获得SHA1对所有构建变体的价值。
在Gradle Projects窗口下> 选择Root Project > signingReport > 双击
下一个
转到变体:发布发布
转到变体:调试进行调试
在Windows中打开命令提示符,然后转到以下文件夹。
C:\ Program Files \ Java \ jdk1.7.0_05 \ bin
使用命令cd <next directory name>
将目录更改为下一个。使用命令cd ..
将目录更改为上一个
现在直接输入以下命令:
keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
打开命令时出现问题
[keytool -list -v -keystore C:\Users\MG\Desktop\test.jks -alias test]
因此,我下载了https://sourceforge.net/projects/portecle/。然后只需从jar程序中打开.jks文件。它会向您显示所有相关信息
我正在使用Ubuntu 12.0.4,并且在生成密钥库文件后在命令提示符下以这种方式获取证书指纹以用于发布密钥库,如果您在应用程序中使用google map,则可以将该密钥用于已发布的应用程序,因此可以在发布后在应用程序内正确显示地图,我在下面的命令提示符下得到了结果
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
对于发布版本,请在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的Answers中的方式运行signingReport,还将显示该发行版的SHA 1和MD5密钥。
如果您使用的是Google Play应用签名,而不是从密钥库中获取SHA,一种更简单的方法是转到Google Play控制台>您的应用>版本管理>应用签名,然后查找您的上传证书。
对于本地用户,您可以从android studio轻松获取sha1,但对于实时直播,请检查以下url:
我们通常不会按照以下步骤进行操作,因此请检查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文件这是您的密钥哈希。