私が試してみました
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
そして、私はキーハッシュを取得します1knQ67Fx4PUOYXggSe+mnzqaTL8=
。
しかし、グーグル自身のドキュメントは代替案も示唆しています。
try {
PackageInfo info = getPackageManager().getPackageInfo(
"com.facebook.samples.hellofacebook",
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));
}
} catch (NameNotFoundException e) {
} catch (NoSuchAlgorithmException e) {
}
しかし、これはをもたらしUR02fNgzyMOjpWCxUnjGZ4ctF6Y=
ます。私はそれを二重に検証し、これら2つの値をそれぞれのアプローチと一貫して取得しています。
なぜ違うのですか?そして、developers.facebook.comに登録する必要があるのはどれですか?ドキュメントはあまり明確ではないようです。
編集:
Offbeatmammalが言うように、Facebookサイトで複数のキーを登録できます。だから大丈夫です。ただし、アプリケーションマニフェストファイルでキーハッシュも指定する必要があります。それで、さらに尋ねます:アプリケーションでどちらを使用する必要がありますか?もちろん試すこともできますが、答えも歓迎します。