我已经浏览了developer.facebook.com上的基本hello world facebook应用无数次的教程,以确保我不会犯错误,但我得到的错误“remote_app_id与存储的id不匹配”但它确实匹配,并不确定它为什么抛出该错误。另外当我运行样本时,我得到一个失败的联编程序事务。现在奇怪的是,如果我卸载我的手机上的FB应用程序,并强制用户登录Facebook的基本Hello World应用程序的作品。我做错了什么或这是一个Facebook的SDK问题。我已经下载并重新安装了一切,但仍然遇到同样的问题Facebook sdk 3.0 android
回答
已解决。
散列值错误。这似乎是一个窗户问题或人类终结的失败。 我使用过:
“keytool.exe的位置”-exportcert -alias alias -keystore“keystore的位置” “openssl.exe的位置”sha1 -binary | “openssl.exe的位置”base64
并且得到了错误的散列值。不管怎么说发现这个职位
http://p-xr.com/implementing-facebook-into-your-app-invalid-key-with-keytool/
下载并运行该应用程序keygeneration,得到了哈希值从logcat中的。 这是伟大的调试关键,但不确定释放你的程序的时候了到野外
希望这有助于
另一个可能的错误(这发生在我身上)是:建立一个“密钥散列”在Facebook的应用程序控制台并使用其他密钥库对Android应用程序进行签名。
不幸的是,这是因为Facebook Getting Started Tutorial导致了这个错误。它表示,Android开发者应该在你的例子中使用默认的android调试密钥,并没有解释应该使用相同的密钥库来生成密钥哈希,你将签署你的应用程序。
我recomendation是在你的Facebook控制台设置了两个关键哈希值:
- 默认的Android调试键:
密钥工具-exportcert -alias androiddebugkey -keystore〜/ .android/debug.keystore | openssl sha1 -binary | OpenSSL的BASE64
- 您的应用程序发布重点:
密钥工具-exportcert -alias yourappreleasekeyalias -keystore〜/。你的/路径/ release.keystore | openssl sha1 -binary | openssl base64
请记住:您无法发布使用SDK工具生成的调试密钥签名的应用程序。因此,仅仅使用使用第一个先前命令行生成的散列键来发布应用程序是不可能的(正如facebook教程所暗示的那样)
有关签署应用程序的更多信息,请访问Signing Your Application。
尝试
try {
PackageInfo info = getPackageManager().getPackageInfo("com.eatapp", PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Log.e("MY KEY HASH:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
} catch (NameNotFoundException e) {
} catch (NoSuchAlgorithmException e) {
}
在主要活动:-)这是我的作品为Android SDK 3.0
- 1. Facebook连接android sdk 3.0
- 2. Android的Facebook SDK 3.0注销
- 3. Facebook SDK 3.0会话
- 4. Android + Facebook SDK 3.0快速入门实例
- 5. Android Facebook SDK 3.0阅读通知
- 6. facebook sdk 3.0登录android活动类
- 7. ME /订阅的Facebook的Android SDK 3.0
- 8. android facebook sdk 3.0设置邮件权限?
- 9. 我如何为Android定制Facebook SDK 3.0?
- 10. Facebook android sdk 3.0登录问题
- 11. Facebook的Android SDK 3.0 - NullPointerException在.getInnerJSONObject()
- 12. android facebook sdk 3.0自定义按钮
- 13. Android Facebook SDK 3.0会话状态“开放”
- 14. Facebook SDK 3.0 Android - 令牌缺失
- 15. Android Facebook SDK 3.0上传本地图片
- 16. Facebook登录错误SDK 3.0
- 17. Facebook的SDK 3.0 - 教程
- 18. 使用Facebook SDK 3.0使用Facebook进行登录使用Facebook SDK 3.0
- 19. Facebook SDK 3.0 - 附加权限
- 20. 使用3.0 SDK的Facebook apprequests
- 21. Facebook的SDK 3.0示例
- 22. Robolectric 3.0与Facebook的SDK 4.0
- 23. Facebook的PHP SDK 3.0 - cancel_url
- 24. android sdk version 3.0 minSdkVersion
- 25. 的Android的Facebook为您在新的3.0 SDK的Facebook
- 26. 在Android上使用proguard的错误Facebook Facebook sdk 3.0
- 27. Android的Facebook SDK 3
- 28. 与Facebook SDK 3.0集成组页面
- 29. 没有得到使用Facebook的SDK 3.0
- 30. Android Facebook SDK - java.lang.NoClassDefDefFoundError
如果使用片断变化Log.i( “PXR” 唯一的解决办法,Base64编码.encodeToString(md.digest(),0)); – user1892172