2014-04-16 28 views
0

我正在使用Facebook的最新Android SDK。無法使用其他帳戶連接Facebook

我有一個應用程序,它使用LoginButton連接到Facebook。如果我嘗試登錄到我的帳戶(這是Facebook應用程序的所有者),則可以。

但是,如果我嘗試登錄到另一個帳戶,則會顯示一個對話框,單擊「確定」後會詢問是否允許任何操作。我無法連接到該Facebook帳戶並獲取用戶數據。

注意:我還應該提到,如果我嘗試使用Facebook SDK中的示例應用程序登錄到該帳戶,則會出現相同的情況。

任何人都可以幫助我解決這個問題。

在此先感謝。

更新1:我試圖讓我的應用程序的其他帳戶所有者,它的工作原理。我現在可以登錄。但我仍然對這個問題感到好奇。

更新2:我解決了我的問題。檢查下面

+0

,能得到任何錯誤,而在登錄? – AndyN

+0

你做了什麼來嘗試「登錄到另一個帳戶」? 我以爲你只能登錄到手機中的Facebook應用程序的相同帳戶。 – uDevel

+0

@uDevel我的意思是,我嘗試登錄與應用程序所有者不同的帳戶。 – SafaOrhan

回答

0

我解決了我的問題。這是因爲我的Facebook應用程序不適用於公衆。

解決方案:

1)前往Facebook的開發者控制檯。

2)選擇應用程序。

3)點擊狀態&評論標籤。

4)將'您的應用程序的可用性切換到公共'上。這是那裏的大開關。

PS:如果你不能打開它,然後嘗試在添加聯繫人的電子郵件:設置>基本>聯繫電子郵件

0

我的答案通過把這個代碼在MainActivity的OnCreate

try { 

      PackageInfo info = getPackageManager().getPackageInfo(getPackageName(), PackageManager.GET_SIGNATURES); 

      for (Signature signature : info.signatures) 
      { 
      MessageDigest md = MessageDigest.getInstance("SHA"); 
      md.update(signature.toByteArray()); 
      Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT)); 
      } 

      } catch (NameNotFoundException e) { 
      Log.e("name not found", e.toString()); 
      } catch (NoSuchAlgorithmException e) { 
      Log.e("no such an algorithm", e.toString()); 
      } 

轉到後的logcat和複製從那裏 密鑰散列路線從您的項目中的關鍵哈希然後去https://developers.facebook.com/並點擊您的應用程序你創建瞭然後去設置粘貼你的密鑰在密鑰哈希框中,然後點擊保存更改。 確保您的應用程序是公開的,並且如果不公開,並且所有用戶都可以訪問該應用程序(如果未公開),請轉到設置,將您的電子郵件置於聯繫人電子郵件框中,然後單擊保存更改,然後選中應用程序名稱旁邊的小圓圈。

+0

我再次檢查了鑰匙,鑰匙在開發者頁面中是一樣的 – SafaOrhan

+0

然後製作另一個Facebook應用程序並獲取新的app_id並將其放入您的android應用程序中 –

相關問題