2012-09-13 98 views
0

需要幫助 - 我有這樣爲Android的Facebook按鈕退出連接

public void logoutFromFacebook() { 
    mAsyncRunner.logout(this, new RequestListener() { 

     public void onComplete(String response, Object state) { 
      Log.d("Logout from Facebook", response); 
      if (Boolean.parseBoolean(response) == true) { 
       runOnUiThread(new Runnable() { 

       @Override 
       public void run() { 
        // Login button visible 
        btnFbLogin.setVisibility(View.VISIBLE); 
        // making all remaining buttons invisible 
        btnFbGetProfile.setVisibility(View.INVISIBLE); 
        btnPostToWall.setVisibility(View.INVISIBLE); 
        btnShowAccessTokens.setVisibility(View.INVISIBLE); 
        btnFbLogout.setVisibility(View.INVISIBLE); 
       } 
      }); 
     } 
    } 
} 

的退出一些代碼,但這些代碼沒有工作,當我點擊註銷,然後再次單擊登錄,我不是輸入用戶名和密碼,我想如果我點擊註銷,當我再次點擊登錄,我可以再次輸入用戶名和密碼,請輸入需要解決方案,謝謝

回答

1

你必須像這樣使用這種方式時,用戶按下注銷按鈕,你必須執行此代碼

public void runTestLogout() { 
    if (testLogout()) { 
     logoutText.setText("Logout Tests Passed"); 
    } else { 
     logoutText.setText("Logout Tests Failed"); 
    } 
} 



public boolean testLogout() { 
    try { 
     Log.d("Tests", "Testing logout"); 
     String response = authenticatedFacebook.logout(this); 
     Log.d("Tests", "Got logout response: *" + response + "*"); 
     if (!response.equals("true")) { 
      return false; 
     } 

     Log.d("Tests", "Testing logout on logged out facebook session"); 
     try { 
      Util.parseJson(authenticatedFacebook.logout(this)); 
      return false; 
     } catch (FacebookError e) { 
      if (e.getErrorCode() != 101 || 
        !e.getMessage().equals("Invalid API key")) { 
       return false; 
      } 
     } 

     Log.d("Tests", "Testing logout on unauthenticated object"); 
     try { 
      Util.parseJson(new Facebook(APP_ID).logout(this)); 
      return false; 
     } catch (FacebookError e) { 
      if (e.getErrorCode() != 101 || 
        !e.getMessage().equals("Invalid API key")) { 
       return false; 
      } 
     } 

     Log.d("Tests", "All Logout Tests Passed"); 
     return true; 
    } catch (Throwable e) { 
     e.printStackTrace(); 
     return false; 
    } 
} 

最主要的是

String response = authenticatedFacebook.logout(this); 

運行這段代碼,你會被註銷,現在你可以再次登錄,您將得到空的用戶名和密碼按鈕

+0

u能告訴我什麼authenticatedFacebook? – Lia

+0

ya ...它的你的FACEBOOK OBJECT Facebook認證的Facebook =新的Facebook(APP_ID); –

+0

Facebook認證Facebook =新Facebook(APP_ID); –