2012-08-12 182 views
4

同时使FB上的Android应用程序,我不得不填补了该领域ANDROID散列键 我期待已久的教程和在运行命令keytool命令并不需要密码

keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64 

我成功在我的窗口中设置了keytool和openssl的环境变量以使其运行。

现在的问题是我已经生成了应用程序签名,但是这个命令并没有要求输入密码。 Facebook说,密码将被要求,你应该输入android作为密码

指导我如果在正确的道路上。总是会感谢帮助

回答

3

奇怪的是,它没有提示输入密码,它在我刚刚尝试时为我做了。根据文档:

一般规则:如果该工具没有要求输入密码,那么您的密钥库路径不正确。

您应该确认〜/ .android/debug.keystore存在,而且keytoolopenssl安装在你的机器上。

如果它仍然不起作用不用担心!

  1. 在我们的Android SDK启用调试通过修改Util.java

    private static boolean ENABLE_LOG = true;

  2. 按照步骤6.1至6.3,这主要只是确保我们的文档也按照这个tutorial提供了另一种选择您的应用有权访问Internet,并启用SSO。

  3. 在手机或模拟器上构建并运行应用程序。您不应该看到权限对话框,因为您没有在应用程序的仪表板中输入应用程序签名。通过logcat检查Android SDK调试日志(因为您在步骤1中启用了日志记录功能),并查看日志条目中是否存在“Android键不匹配”的条目。这个错误还会为您提供发送到Facebook的密钥。记下钥匙的价值并将其输入到您的Facebook应用设置中,并确保保存您的设置。一旦SSO成功完成

  4. 关闭调试通过修改Util.java

    private static boolean ENABLE_LOG = false;

让我知道这是否有助于!

1

我使用一台Windows机器,并有同样的问题。我没有使用environment variable,而是实际上提供了qualified pathkeystore,即"C:\Users\channa.HOME\\.android\debug.keystore"),并且它按照预期请求了我的密码。