获取SHA-1指纹的方法和获取指纹的方法一样吗?之前,我正在运行这个命令:

我不清楚我得到的结果是不是SHA-1指纹。有人能解释一下吗?


当前回答

首先有一个与fb-sdk android-support-v4.jar相同的.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());
}

其他回答

对我来说,这是一个循序渐进的过程。

首先运行应用程序,然后按照以下步骤(也显示在截图)

点击签署报告 打开gradle控制台对话框 它会显示你的SHA-1证书编号

答案很简单。在新的Android Studio版本中找到SH1。做这些简单的步骤。

步骤1进入“设置”界面,也可以按“CTRL + ALT + S”

Edit

步骤2最新的android工作室包括- android工作室电鳗| 2022.1.1

选择“实验”,然后取消选中“只在Gradle同步过程中生成的Gradle任务列表中包含测试任务”的选项,然后按“确定”

第2步为旧版本的android studio -

去实验,然后取消选项“不构建Gradle任务在Gradle同步期间,如果它被选中,然后按确定

继续

步骤3进入“文件”,选择“项目与Gradle文件同步”选项

步骤4单击面板右侧的Gradle,然后Tasks,然后android,然后双击signingReport

然后您将获得SH1指纹

请参考以下图片获取SHA-1密钥

跟随本教程为谷歌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\,打开命令行,尝试上述命令进行调试/发布模式。

获得SHA1或SHA-256的另一种方式使用./gradlew signingReport

欲了解更多详细信息,请访问 使用Gradle的签名报告

你可以通过去Window>Preference>Android>Build in Eclipse获取任何工作区的MD5和SHA1指纹。