Android for Facebook的Hash密钥发布

时间:2015-03-27 18:24:13

标签: android facebook

我试图在Splash类

上使用此代码获取realese应用程序的哈希值
try {
    PackageInfo info = getPackageManager().getPackageInfo("com.myapp", PackageManager.GET_SIGNATURES);
    for (Signature signature : info.signatures) {
        MessageDigest md = MessageDigest.getInstance("SHA");
        md.update(signature.toByteArray());
        Log.i("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
    }
} catch (PackageManager.NameNotFoundException e) {

} catch (NoSuchAlgorithmException e) {

}

问题是getPackageManager()。getPackageInfo(" com.myapp",PackageManager.GET_SIGNATURES)会抛出一个无法找到包的错误。

包名称与AndroidManifest.xml中的名称相同

谢谢

1 个答案:

答案 0 :(得分:0)

问题是我应该使用的包名是build.gradle中定义的包名,而不是AndroidManifest.xml中的包名。

我正在使用不同口味的Gradle,所以我将applicationId用于生产的味道。

我希望这对其他人有用。