2013-07-20 19 views
0

我已經改變我的日食到另一個版本後,服務器崩潰。現在我無法將我的應用程序登錄到Facebook或發佈文本或圖像。無法讓我的Android應用程序使用Facebook,雖然後我把哈希鍵

我知道如何生成debug.keystore散列鍵,以及我使用它導出應用程序的Keystore散列鍵。 順便說一下,我刪除了我的debug.keystore並生成一個新的作爲嘗試解決問題,我失敗了。

下面是用於debug.keystore命令:

C:\ Program Files文件\的Java \ jre7 \ BIN \ keytool.exe的」 -exportcert -alias androiddebugkey -keystore C:\用戶\ Administrator.android \ debug.keystore | C:\ WINDOWS \ Syswow64資料\ openssl.exe SHA1 -binary | C:\ WINDOWS \ Syswow64資料\ openssl.exe的base64

而且這是我的密鑰庫,我用它來導出我的應用到:

「C:\ Program Files \ Java \ jre7 \ bin \ keytool.exe」-exportcert -alias exportkeystore -keystore「C:\ Users \ Administrator \ APK \ exportkeystore」 | C:\ Windows \ SysWOW64 \ openssl.exe sha1 -binary | C:\ WINDOWS \ Syswow64資料\ openssl.exe的base64

我把所得到的兩個哈希鍵,進入我的Facebook Android原生應用程序。 另外我注意到,我的日食沙已經改變到另一個,我以前的日食是朱諾和現在是開普勒。

現在有什麼解決方案? 如何解決我的Facebook登錄問題?和 在日蝕指紋證書更改後(即新SHA),我仍可以發佈我的應用嗎?

回答

0

請嘗試從您的應用的第一個活動的onCreate api調用以下方法。這將打印散列鍵,比較,與HASH你加入Facebook應用程序,看看這是問題

public void printHashKey() { 

    try { 
     PackageInfo info = getPackageManager().getPackageInfo("your.package.name", 
       PackageManager.GET_SIGNATURES); 
     for (Signature signature : info.signatures) { 
      MessageDigest md = MessageDigest.getInstance("SHA"); 
      md.update(signature.toByteArray()); 
      Log.d("TEMPTAGHASH KEY:", 
        Base64.encodeToString(md.digest(), Base64.DEFAULT)); 
     } 
    } catch (NameNotFoundException e) { 

    } catch (NoSuchAlgorithmException e) { 

    } 

} 
+0

對不起,結果散列鍵與我的Facebook應用程序相同。問題仍未解決。 順便說一句,謝謝。 仍然需要知道是否有不同的日食SHA會讓我將我的應用發佈到Google Play。 – blueware

相關問題