好的,所以我正在尝试使用facebook API,但是对这个密钥库没有运气。我可以让它生成并给我一个签名,但应用程序一直告诉我invalid_key。我正在四处阅读,有些人说你必须使用linux来获得一个很好的签名,我很难相信。有人可以帮我从这里出去吗?
答案 0 :(得分:3)
您必须从密钥库中获取密钥并将其放在Facebook网站上。
按照此处的指南...
http://developers.facebook.com/docs/guides/mobile/#android
基本上,您需要从密钥库中提取密钥。以下命令从名为androiddebugkey
的密钥库中提取密钥debug.keystore
(这两个密钥库均由Eclipse自动创建)。 androiddebugkeystore
的密码为android
。
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore
| openssl sha1 -binary
| openssl base64
从中获得数字后,将其放在Facebook应用页面的密钥哈希字段中。
键与图像中显示的格式相同。
答案 1 :(得分:3)
确保您提供的正是他们所要求的。如果他们要求MD5
密钥,SHA1
密钥将无效,反之亦然。如果您需要MD5
密钥并且只获得SHA1
密钥,请尝试安装旧版1.6的Java Development Kit(JDK)。
新的(1.7)仅提供SHA1
密钥。这解决了我的问题。
答案 2 :(得分:1)
我正在使用JDK 1.7并遇到同样的问题。通过将-v放入keytool命令,它将为您提供MD5,SHA1和SHA256指纹
$ keytool -v -list -alias androiddebugkey ...等。然后抓住MD5与谷歌或Facebook一起使用。