2012-08-12 181 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"),並且它按照預期請求了我的密碼。