好的,所以我正在尝试使用 facebook API,但是这个密钥库没有运气。我可以让它生成并给我一个签名,但应用程序一直告诉我 invalid_key。我正在阅读,有些人说你必须使用 linux 才能获得一个好的签名,我觉得这很难相信。有谁可以帮我离开这里吗?
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 应用程序页面上的 Key hash 字段中。
密钥遵循图像中看到的相同格式。
确保您提供的正是他们所要求的。如果他们要MD5
钥匙,SHA1
钥匙就不起作用,反之亦然。如果您想要一个MD5
密钥而您只是获得一个SHA1
密钥,那么请尝试安装较旧的 1.6 版本的 Java 开发工具包 (JDK)。
新的(1.7)只给出了一把SHA1
钥匙。这解决了我的问题。
我正在使用 JDK 1.7 并且遇到了同样的问题。通过将 -v 放入您的 keytool 命令中,它将为您提供 MD5、SHA1 和 SHA256 指纹
$ keytool -v -list -alias androiddebugkey...等。然后抓住 MD5 与 Google 或 Facebook 一起使用。
在这里找到了这个答案:http: //mirnauman.wordpress.com/2012/01/26/how-to-get-google-maps-api-key-for-android-issues-and-errors-solved/