获取apk的哈希值

时间:2018-03-13 20:51:22

标签: android

我想让我的应用程序计算并显示应用程序的apk文件的哈希值。它很容易在Java中完成,但我如何为apk做到这一点?

问题是要获得应用程序apk的路径。在Java中

URL url = AutoCheck.class.getResource(“Main.class”);

会找到所需的网址。

1 个答案:

答案 0 :(得分:0)

我使用此代码获取哈希码

private void getHash(){
    try {
        PackageInfo info = getPackageManager().getPackageInfo(YourPackageName, PackageManager.GET_SIGNATURES);
        for (Signature signature : info.signatures) {
            MessageDigest md = MessageDigest.getInstance("SHA");
            md.update(signature.toByteArray());
            System.out.println("keyhash: " + Base64.encodeToString(md.digest(), Base64.DEFAULT));
        }
    } catch (Exception e) {
        System.out.println("cannot obtain keyhash, " + e.toString());
    }
}

不确定这是否是您需要的