2013-03-19 95 views
3

我是Facebook +原生Android新手。我乖乖地遵循他們網站上的步驟,但即使我成功使用Facebook登錄,我仍然在session.isOpened()方法中收到「false」結果。我相信我已經正確設置了散列鍵,包名和類名。你能幫我解決這個代碼中的問題嗎?即使成功登錄到Facebook,session.isOpened()也將返回false

public class MainActivity extends Activity { 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    // start Facebook Login 
    Session.openActiveSession(this, true, new Session.StatusCallback() { 

     // callback when session changes state 
     @Override 
     public void call(Session session, SessionState state, Exception exception) { 

      if (session.isOpened()) { 

      // make request to the /me API 
      Request.executeMeRequestAsync(session, new Request.GraphUserCallback() { 

      // callback after Graph API response with user object 
      @Override 
      public void onCompleted(GraphUser user, Response response) { 
       if (user != null) { 
       TextView welcome = (TextView) findViewById(R.id.welcome); 
       welcome.setText("Hello " + user.getName() + "!"); 
       } 
      } 
      }); 
     } 
     } 
    }); 


    } 

    @Override 
    public void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 
     Session.getActiveSession().onActivityResult(this, requestCode, resultCode, data); 
    } 

回答

3

是的,終於我能解決這個問題。

從我在我的Facebook應用程序設置中設置的不正確的哈希鍵出現問題。

要正確生成散列鍵,請使用java6因爲Facebook需要此版本。我嘗試使用java7,但它沒有工作。

請參考下面生成散列鍵由Vizzz

LINK

+0

回答正確的步驟,你登錄不同的Facebook用戶ID的成功? – VAdaihiep 2013-05-09 07:18:02

+0

VAdaihiep:你也可以在與不同的Facebok的用戶ID登錄 : - 轉到developers.facebook.com - 來自頂尖 選擇應用程序 - 從左側 選擇想要的應用程序 - 選擇編輯應用程序 - 禁用沙盒模式 – 2013-06-12 14:27:16

+0

@ VAdaihiep:是的,我能夠使用另一個Facebook用戶ID成功登錄。 – 2013-12-14 09:10:58

相關問題