我开发了一个应用程序,我需要在我的facebook应用程序中添加散列键,但我以两种不同的方式获得了不同的散列键,有可能有两个散列键,我的应用程序使用了什么散列键?
我通过cmd得到了第一个哈希键:
在cmd上触发:
keytool -exportcert -alias androiddebugkey -keystore "C:\Users\MAC\.android\debug.keystore" | "C:\Users\MAC\openssl-0.9.8k_WIN32\bin\openssl.exe" sha1 -binary | "C:\Users\MAC\openssl-0.9.8k_WIN32\bin\openssl.exe" base64
got hash key : xNHUpu0sITqehvLuV2H3z9zettE=我通过下面的代码得到了第二个散列键:
try {
PackageInfo info = getPackageManager().getPackageInfo(
"com.fb.project", //Replace your package name here
PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
System.out.println("key hash = "+ Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
} catch (NameNotFoundException e) {
e.printStackTrace();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
got hash key : 2jmj7l5rSw0yVb/vlWAYkK/YBwk=所以,我的问题是我的应用程序使用了哪个哈希键?
发布于 2015-06-28 02:25:15
"2jmj7l5rSw0yVb/vlWAYkK/YBwk=“是一个空输入的SHA1散列,所以如果你得到这样的东西,你实际上没有散列任何东西。
发布于 2014-08-27 21:07:04
是的,你可以在windows中获得不同的keys.Especially,所以最好是获得密钥programmatically.well。这种情况下,两个密钥都可以工作,但如果你的手机安装了facebook原生应用程序,那么使用cmd生成的密钥将提供error.So。最好使用通过program.you生成的密钥,可以在facebook开发者站点上阅读更多内容。
https://stackoverflow.com/questions/25527426
复制相似问题