Facebook SDK에서 HelloFacebookSample을 가져 오려고하는데 문제가 있습니다. 포스트 상태 업데이트는 멋지게 보이는 페이스 북 대화 상자를 가져 오지만 공유 버튼을 누르면 "(# 404) 키 해시 XXX-XXXX가 저장된 키 해시와 일치하지 않습니다."라는 오류가 나타납니다. 나는 내 과정에서 내가 뭘 잘못하고 있는지 알고 싶다. 여기 내가 한 일이있다.HelloFacebookSample이 작동하지 않습니다. Facebook SDK 업데이트 상태 : Android
1) keytool -exportcert -alias androiddebugkey -keystore "path"\ debug.keystore | openssl sha1 - 이진 | openssl base64
나는 cmd에서 위를 실행하고 해시 번호를 받았습니다. FB 문서에서 언급 한 모든 것이 발생했기 때문에 패스워드를 묻는 메시지가 나왔고 "android"를 사용했고 그 직후에 번호를 얻었 기 때문에 이것은 작동하는 것처럼 보였습니다.
2) 내 전화 번호를 가져 와서 "예"라는 앱을 만든 후 개발자 포털에 입력했습니다. 내가 쓴 스크린 샷이 있습니다.
3) 나는 다시 예제 프로젝트에 가서) 위의 스크린 샷에서 (내 개발자 포털에 일치하는 응용 프로그램 ID를 변경했습니다.
그 후 나는 그것이 좋을 것이라고 생각했습니다. 그러나 나는 아직도이 오류를 받았다. 그래서 코드 스 니펫으로 키 해시를 얻으려고했습니다. 내 onCreate에서 나는 다음을 가지고있다.
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.i("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
} catch (NameNotFoundException e) {
Log.d(TAG, "NameNotFoundException");
} catch (NoSuchAlgorithmException e) {
Log.d(TAG, "NoSuchAlgorithmException");
}
"NameNotFoundException"이 반환하는 것은 키가 없기 때문이다. 이것을 어떻게 작동시킬 수 있습니까? 그리고 제가 누락 된 부분은 무엇입니까? 미리 감사드립니다. 귀하의 코드는 괜찮습니다, 나는 또한 내가 프로젝트의 매니페스트 파일에서 확인 패키지 이름이 다른 com.facebook.samples.hellofacebook
있는지 확인 PackageInfo info = getPackageManager().getPackageInfo( "MY.PACKAGE.NAME.GOES.HERE", PackageManager.GET_SIGNATURES);
에서 패키지를 변경 한 후
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.e("KeyHash:",
Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
} catch (NameNotFoundException e) {
Log.d("NameNotFoundException", "NameNotFoundException");
} catch (NoSuchAlgorithmException e) {
Log.d("NameNotFoundException", "NoSuchAlgorithmException");
}
NameNotFoundException가 처음으로있어
해결책이 있습니까? 제발 공유 –