使用Unity 4.3和Facebook SDK 5.0.3 / 5.0.4 beta我似乎无法使用FB.Login(“publish_actions”,LoginCallback)登录Android上的Facebook。我的游戏显示“游戏希望代表您发布给您的朋友” - 消息。点击OK后,我得到一个ajax-spinner大约2-3秒,然后我被带回我的游戏而不能发布FB.Feed。
我得到的信息是:
V/FBUnitySDK( 8892): sending to Unity OnLoginComplete({"cancelled":true,"key_hash":"XXXXXXXXXXXXXXXXXXX"})
一旦删除Facebook应用程序,一切似乎都运行正常,我得到一个弹出窗口,要求我的publish_actions权限。
我还查看了密钥哈希问题,并通过获取FB.Android.KeyHash找到了正确的key_hash。
有解决方法吗?
答案 0 :(得分:2)
如果手机中安装了默认的Facebook应用,或者您尝试在Google Play上传应用,那么您需要一个不同的KeyHash。因为,当你开发你的FB应用程序时,你已经使用默认的debug.keystore创建的密钥哈希注册了你的FB应用程序。
所以,现在你需要一个不同的KeyStore来生成不同的KeyHash。你需要一个签名的KeyStore,你可以在this tutorial的帮助下获得,生成新的密钥库,生成密钥哈希并用这个新的密钥哈希注册你的FB应用程序。这应该工作。要生成新的KeyHash,您可以关注this link。
答案 1 :(得分:1)
好的,我终于明白了。
在Mac上,在终端中输入以下内容:
keytool -list -keystore pathtokeystorefile.keystore | openssl sha1 -binary | openssl base64
系统会提示您输入密码。这样做,您将获得有效的KeyHash。