2013-01-31 25 views
9

因此,我知道如何使用android的密碼生成調試哈希鍵。我知道,對於每個新設備,我需要生成(並上傳到Facebook)新的哈希鍵。Android Facebook SDK:如何生成非調試哈希鍵?

現在,我還沒準備好實際進行生產,但我想將應用程序分發給一組測試人員,他們不希望自己生成哈希事物。我看到一個非調試散列鍵的引用:

接下來,您將需要爲應用程序生成密鑰散列。對於 調試,如果使用Eclipse,您將希望使用Android調試密鑰生成此密鑰散列 。當您準備發佈您的應用程序時,您需要爲您的簽名密鑰生成Key Hash,並在您的已簽名應用程序正常工作之前在Facebook中更新 此值。

http://www.techrepublic.com/blog/app-builder/integrate-facebook-logins-in-your-android-app/296

你如何產生的?我以前從未製作過生產(簽名)應用程序,這是否與此有關?在完成之前簽署我的應用程序是否有缺點?如果不是,我該如何讓任何設備通過Facebook連接運行這個應用程序?

回答

12

您可以輕鬆生成自己的密鑰,以在發佈模式下籤署您的應用程序。有關詳細信息,請參閱Android文檔:Signing in Release Mode

密鑰庫代例如:

$ keytool -genkey -v -keystore my-release-key.keystore 
    -alias alias_name -keyalg RSA -keysize 2048 -validity 10000 

然後當你與調試的關鍵確實產生了Facebook的哈希:

$ keytool -exportcert -alias alias_name -keystore my-release-key.keystore 
    | openssl sha1 -binary | openssl base64 

最後與組測試者分享您簽署的apk,這是所有。

+0

謝謝!男人,簽署應用程序比我想象的更復雜,但我必須反正學習它,所以不妨現在 – Jenny

+0

不客氣。祝你的程序好運。 – ottel142

+0

@ ottel142 SSO完美運作。但是,當我簽署我的構建,並使用上述方法釋放散列鍵時,我的SSO失敗 –