2015-09-26 111 views
0

我想檢查用戶是否已經在Facebook上或在沒有啓動屏幕上。 我嘗試這個,但它不工作...Facebook已經登錄android

public class SplashScreen extends Activity { 

// Splash screen timer 
AccessTokenTracker accessTokenTracker; 
private static int SPLASH_TIME_OUT = 3000; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    FacebookSdk.sdkInitialize(getApplicationContext()); 
    accessTokenTracker = new AccessTokenTracker() { 
     @Override 
     protected void onCurrentAccessTokenChanged(AccessToken oldAccessToken, AccessToken newAccessToken) { 
      updateWithToken(newAccessToken); 
     } 
    }; 
    setContentView(R.layout.splash_screen); 
    updateWithToken(AccessToken.getCurrentAccessToken()); 

} 

    private void updateWithToken(AccessToken currentAccessToken) { 

     if (currentAccessToken != null) { 
      new Handler().postDelayed(new Runnable() { 

       @Override 
       public void run() { 
        Intent i = new Intent(SplashScreen.this, Home_Page.class); 
        startActivity(i); 

        finish(); 
       } 
      }, SPLASH_TIME_OUT); 
     } else { 
      new Handler().postDelayed(new Runnable() { 

       @Override 
       public void run() { 
        Intent i = new Intent(SplashScreen.this, MainActivity.class); 
        startActivity(i); 

        finish(); 
       } 
      }, SPLASH_TIME_OUT); 
     } 
    } 
} 

任何人都可以幫助我嗎?

回答

0

在你的項目中,您試圖通過Facebook登錄,可以說LoginActivity,你可以在用戶下面的代碼:

public static boolean isLoggedIn() { 
       AccessToken accessToken = AccessToken.getCurrentAccessToken(); 
       return accessToken != null; 
} 

現在,在您SplashActivity,裏面添加的onCreate()本身這個代碼。

if (LoginFragment.isLoggedIn()) 
    { 
      LoginManager.getInstance().logOut(); 
    } 

試試這個。希望它可以幫到你。