2013-10-21 196 views
0

我使用Facebook登錄在Android應用程序的用戶註冊。它適用於我,但有時 點擊登錄按鈕後登錄窗口未打開,屏幕掛斷。 由於我猜這個問題,因爲會話超時,當應用程序嘗試與Facebook連接,但如果Facebook沒有迴應,那麼這個原因會發生。所以我怎麼能解決這個問題。Facebook登錄失敗,Android應用程序

在此先感謝。

編輯: - 代碼是 -

private void initFacebook(Bundle savedInstanceState){ 
     uiHelper = new UiLifecycleHelper(this, callback); 
     uiHelper.onCreate(savedInstanceState); 
     mSessionTracker = new SessionTracker(this, callback); 
     mSessionTracker.startTracking(); 
} 

和回調方法時,在登錄按鈕,用戶點擊是 -

private Session.StatusCallback callback = new Session.StatusCallback() { 
     @Override 
     public void call(Session session, SessionState state, Exception exception) { 
      onSessionStateChange(session, state, exception); 
      if(state!= null){ 
       if(state.isOpened()){ 
        mSession = session; 
        if(mLoginButton != null) 
        mLoginButton.setText(getString(R.string.loginwithfacebook)); 
        showLoadingView(); 
       } 
      } 

     } 
}; 


private void onSessionStateChange(Session session, SessionState state, Exception exception) { 
     if (pendingAction != PendingAction.NONE && (exception instanceof FacebookOperationCanceledException || 
       exception instanceof FacebookAuthorizationException)) { 
       new AlertDialog.Builder(BaseActivity.this) 
        .setTitle(R.string.cancelled) 
        .setMessage(R.string.permission_not_granted) 
        .setPositiveButton(R.string.ok, null) 
        .show(); 
      pendingAction = PendingAction.NONE; 
     } else if (state == SessionState.OPENED_TOKEN_UPDATED) { 
      handlePendingAction(); 
     } 
    } 

而且回調方法不叫一些時間,這將調用。

+0

發佈一些代碼和錯誤日誌拉維 –

回答