2014-01-25 115 views
1

我正在開發Android應用程序。這個應用程序的一部分是從Facebook登錄和註銷。現在,我可以成功登錄,但是在註銷時似乎存在問題。當我點擊註銷按鈕時沒有任何反應。從Android上從Facebook註銷

我的註銷功能是:

public void logoutFromFacebook() { 

    mAsyncRunner.logout(this, new RequestListener() { 
     @Override 
     public void onComplete(String response, Object state) { 
      Log.d("Logout from Facebook", response); 
      if (Boolean.parseBoolean(response) == true) { 
       // User successfully Logged out 
       Intent i = new Intent(FbActivity.this, MainActivity.class); 
       startActivity(i); 
      } 
     } 

     @Override 
     public void onIOException(IOException e, Object state) { 
     } 

     @Override 
     public void onFileNotFoundException(FileNotFoundException e, 
       Object state) { 
     } 

     @Override 
     public void onMalformedURLException(MalformedURLException e, 
       Object state) { 
     } 

     @Override 
     public void onFacebookError(FacebookError e, Object state) { 
     } 
    }); 
} 

我試圖調試它。當代碼到達該行時:

mAsyncRunner.logout(this, new RequestListener() { 

我收到一條錯誤消息。錯誤是:

Source not found. The JAR file C:\Users\...\sdk\platoforms\android-18\android.jar has no source attachment. 

任何想法我做錯了什麼? 在此先感謝:)

+0

爲什麼你不能用戶,Session.close()? – Triode

+0

首先,無論何時輸入會話,編譯器都會要求我導入它。當使用Eclipse ADT建議的解決方案時,它從「android.service.textservice.SpellCheckerService」導入 我非常困惑 –

回答

0

只需以靜態方式訪問Facebook會話並關閉它。

首先import com.facebook.Session

然後只要致電:Session.getActiveSession().closeAndClearTokenInformation();

這也將清除緩存數據,所以你必須重新啓動您的應用程序重新登錄。