你好,我已经尝试了很多不同的方法,并遵循了的教程
http://developers.facebook.com/docs/guides/mobile/#android
我正在运行windows 7 64位,我已经下载了Cygwin并输入了
$ keytool -export -alias androiddebugkey -keystore "C:Usersmanley85.android
debug.keystore" | openssl sha1 -binary | openssl base64 -a -e
Enter keystore password: android
我在签名和导出包时使用sam别名(androiddebugkey)
。密钥库指向我使用的密钥库的默认位置:
"C:Usersmanley85.androiddebug.keystore"
在我签名和导出之后,我获取密钥散列,该散列在Mobile and Devices/Settings/Key hash
中FB上的开发者页面中输出和输入
我遇到的问题是,以前当我做错所有事情时,我相信它在说"invaid key",所以我一直在这样做,我认为这是正确的,现在它在说:
FaceBook授权登录失败:服务器无法通信重试
这让我相信密钥是正确的,但现在出现了某种类型的通信错误?我还将(错误密钥哈希/无密钥哈希)输入到facebook移动设置密钥哈希中,并将获得
("无效密钥")
但当按照我上面解释的方式进行时,它会输出
"登录失败…等等"
我也卸载了我的脸书,每次都有问题,脸书不允许这样做。我在我的戴尔连胜、安卓一号和三星银河标签上运行过这个,但也遇到了同样的问题。
我刚刚经历了这一切。摘要:
1照它说的做http://developers.facebook.com/docs/guides/mobile/#android
2您应该安装Cygwin和OpenSSL。您可以通过在Cygwin安装中选择OpenSSL选项来安装带有Cygwin的OpenSSL
3 Cygwin运行中:
keytool-exportcert-alias androiddebugkey-keystore~/.android/debug.keystore|openssl sha1-binary|openssl base64
--没有换行符。你可以从这里复制。
4到目前为止,您已经生成了标准Android调试密钥的哈希。有了这个,Facebook示例应用程序将在模拟器中运行(至少对我来说是这样)
5如果你想使用生产密钥,你应该对生产密钥再次执行3,在开发者区域将新的哈希添加到你的FB应用程序中(见1),在.apk上签名并将其加载到手机中。
此问题可能是由于以下原因导致的,该原因是为android链接找到了Facebook sdk:
1) 使用签名的生成。您可以使用调试密钥进行签名,但请确保用于签名的密钥与Facebook开发人员设置中的"密钥哈希"字段匹配。
此处链接
当您使用调试键时,我认为它工作正常。使用私钥对代码进行签名后,请确保使用相同的密钥为facebook生成密钥哈希,否则会出现此问题。尝试如下:
- 首先,您用签署了代码并获得了密钥
- 第二次使用该密钥生成密钥哈希:keytool-exportcert-alias"密钥名称"-keystore"密钥存储名称"|openssl sha1-binary|openssl base64
- 然后输入您给密钥的密码
- 获取keyhash值,并将其作为新的keyhash输入到您的facebook中并保存
- 打开已签名的应用程序,然后再次尝试使用facebook。我希望它能起作用