如何找到我的Android应用程序的MD5指纹

如何找到我的Android应用程序的MD5指纹,android,cmd,md5,keystore,Android,Cmd,Md5,Keystore,我正在尝试注册Android谷歌地图,它需要MD5指纹。如何从我的应用程序中提取指纹 我是keystore的新手,在网上找到的东西我一点也不懂。这么简单的指示,我很感激 提前感谢 如果您正确地遵循这一点,您应该能够获得您的MD5指纹。签名时和签名后都有获取指纹的说明 如果您已经签名: 首先使用命令提示符导航到自动生成的profile android文件夹中的调试密钥库,如链接中所述。然后,您将粘贴此项(不带美元符号),并在命令提示符下运行它: $ keytool -list -alias and

我正在尝试注册Android谷歌地图,它需要MD5指纹。如何从我的应用程序中提取指纹

我是keystore的新手,在网上找到的东西我一点也不懂。这么简单的指示,我很感激

提前感谢

如果您正确地遵循这一点,您应该能够获得您的MD5指纹。签名时和签名后都有获取指纹的说明

如果您已经签名: 首先使用命令提示符导航到自动生成的profile android文件夹中的调试密钥库,如链接中所述。然后,您将粘贴此项(不带美元符号),并在命令提示符下运行它:

$ keytool -list -alias androiddebugkey -keystore <path_to_debug_keystore>.keystore \
-storepass android -keypass android

按照提示说明操作后,您将收到您的MD5。以下内容可能会对您有所帮助:

public String convert(String str){
        String a=null;
         char hexDigits[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 
                  'a', 'b', 'c', 'd', 'e', 'f' }; 
        try {
            a=new   String(str.getBytes("ISO8859_1"),"UTF-8");
            byte[] strTemp = str.getBytes(); 
            MessageDigest mdTemp = MessageDigest.getInstance("MD5"); 
               mdTemp.update(strTemp); 
               byte[] md = mdTemp.digest(); 
               int j = md.length; 
               char str1[] = new char[j * 2]; 
               int k = 0; 
               for (int i = 0; i < j; i++) { 
                byte b = md[i]; 
                //System.out.println((int)b);  
                str1[k++] = hexDigits[b >> 4 & 0xf]; 
                str1[k++] = hexDigits[b & 0xf]; 
               } 


        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
 return new String(str1); 

}
公共字符串转换(字符串str){
字符串a=null;
字符十六进制数字[]={0',1',2',3',4',5',6',7',8',9',,
‘a’、‘b’、‘c’、‘d’、‘e’、‘f’};
试一试{
a=新字符串(str.getBytes(“ISO8859_1”),“UTF-8”);
字节[]strTemp=str.getBytes();
MessageDigest mdTemp=MessageDigest.getInstance(“MD5”);
mdTemp.更新(strTemp);
字节[]md=mdTemp.digest();
int j=md.长度;
字符str1[]=新字符[j*2];
int k=0;
对于(int i=0;i>4&0xf];
str1[k++]=十六进制数字[b&0xf];
} 
}捕获(例外e){
//TODO自动生成的捕捉块
e、 printStackTrace();
返回新字符串(str1);
}

您将需要两个密钥库

一个用于调试目的,另一个用于 一个用于释放目的

当您通过eclipse开发应用程序并在模拟器或设备上进行调试时,您将需要调试密钥库。否则,您将无法看到映射。 调试密钥库已存在于系统中

试着在家里找到他们

Windows Vista: C:\Users\<user>\.android\debug.keystore

Windows XP: C:\Documents and Settings\<user>\.android\debug.keystore

OS X and Linux: ~/.android/debug.keystore
输出类似(询问密码时只需按enter键)

复制此MD5指纹值并转到

成功注册后,您将获得地图密钥。请将这些密钥放在视图的MapView元素中

释放 您需要生成自己的密钥库,并且需要为该密钥库获取映射密钥。 否则,您将无法看到将apk部署到设备上的地图

创建自己的新密钥库,并对生成的密钥库执行相同的过程。 生成密钥库也很容易。 我只需通过eclipse导出我的android应用程序,然后它就可以自己做任何事情了


希望能有所帮助:)

哇,如果有了上面的答案,我永远也不会明白,我必须读一本书的教程,这本书终于明白了

调试密钥库的文件名为debug.keystore。这是Eclipse用来签名的证书 您的应用程序可以在Android模拟器或设备上运行。 使用调试密钥库,您需要使用Keytool.exe应用程序提取其MD5文件 包括在您的JDK安装中。申请免费谷歌地图时需要此格式 钥匙

您通常可以在C:\Program Files\Java\\bin中找到Keytool.exe 文件夹。

发出以下命令(见图9-4)以提取MD5 fi打印: keytool.exe-list-alias androiddebugkey-keystore “C:\Users\.android\debug.keystore”-storepass android
-keypass android

有人来这里寻找

用于YouTube OAuthAPI的MD5或SHA1命令如下:

Windows Vista: C:\Users\<user>\.android\debug.keystore

Windows XP: C:\Documents and Settings\<user>\.android\debug.keystore

OS X and Linux: ~/.android/debug.keystore
debug.keystore的默认密码是android

取自


适用于Windows用户:如果您有问题,请确保周围没有其他debug.keystore文件。我按照说明进行了操作,但仅当我发现Eclipse安装使用的是位于此处的其他debug.keystore时,才设法使其正常工作:

android-sdk-windows.android


(不是我的Windows用户目录中的版本)

2015更新:

确保您当前在终端中的
jdk/bin

对于Linux或OS X,打开终端窗口并输入以下内容:

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
对于Windows Vista和Windows 7,请运行:

keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
如果您在上述步骤中成功,您将获得:

Alias name: androiddebugkey
Creation date: Jan 01, 2013
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: 4aa9b300
Valid from: Mon Jan 01 08:04:04 UTC 2013 until: Mon Jan 01 18:04:04 PST 2033
Certificate fingerprints:
     MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6A:AC:F9
     SHA1: BB:0D:AC:74:D3:21:E1:43:07:71:9B:62:90:AF:A1:66:6E:44:5D:75
     Signature algorithm name: SHA1withRSA
     Version: 3

您好,谢谢。非常感谢您的时间和解释:)我希望它能帮助很多像我这样的新手。您好,我也按照同样的过程生成md5密钥哈希,但我得到了sha1密钥哈希。为什么它是证书指纹(sha1)而不是证书指纹(md5)@javanator将我的语句更改为C:\Program Files\Java\jdk1.7.0\u 04\bin>keytool.exe-V-list-alias androiddebugkey-keystore“C:\Documents and Settings\IBM\.android\debug.keystore”-storepass-android-keypass-android解决了这个问题你是从其他地方引用的吗?如果是的话,请编辑你的答案并添加一个链接/引用来说明
keytool -exportcert -alias androiddebugkey -keystore path-to-debug-or-production-keystore -list -v
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
Alias name: androiddebugkey
Creation date: Jan 01, 2013
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: 4aa9b300
Valid from: Mon Jan 01 08:04:04 UTC 2013 until: Mon Jan 01 18:04:04 PST 2033
Certificate fingerprints:
     MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6A:AC:F9
     SHA1: BB:0D:AC:74:D3:21:E1:43:07:71:9B:62:90:AF:A1:66:6E:44:5D:75
     Signature algorithm name: SHA1withRSA
     Version: 3