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

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


当前回答

我在使用命令时遇到了一个问题

[keytool -list -v -keystore C:\Users\MG\Desktop\test.jks -alias test]

因此,我下载https://sourceforge.net/projects/portecle/。 然后从jar程序中打开。jks文件。它会显示所有相关信息

其他回答

首先有一个与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());
}

如果你没有Keystore和别名,你可以使用这个命令:

keytool -list -printcert -jarfile app.apk

答案很简单。在新的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指纹

如果您正在使用谷歌Play应用程序签名,而不是从密钥库中获取SHA,更简单的方法是到谷歌Play控制台>您的应用程序> Release Management >应用程序签名并寻找您的上传证书。

从调试密钥库中,我们可以在Eclipse中获得SHA1值。从菜单访问: 窗口->首选项-> Android ->构建

但它不适用于生产密钥库。

因此,要从生产密钥库中获取SHA1值,请执行以下命令: Android Tools ->导出签名应用程序包。遵循apk签名的过程,SHA1将显示为证书。