2016-07-15 23 views
0

這裏是我的登錄活動代碼:爲什麼用戶的名字在Android SDK的Facebook SDK登錄後臺顯示爲空白?

public class LoginActivity extends Activity { 
private Button facebookButton; 
public static final String PREFS_NAME = "MyPrefsFile"; 

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

    initUI(); 

    Backendless.setUrl(Defaults.SERVER_URL); 
    Backendless.initApp(this, Defaults.APPLICATION_ID, Defaults.SECRET_KEY, Defaults.VERSION); 

    Backendless.UserService.isValidLogin(new DefaultCallback<Boolean>(this) 
    { 
     @Override 
     public void handleResponse(Boolean isValidLogin) 
     { 
      if(isValidLogin && Backendless.UserService.CurrentUser() == null) 
      { 
       String currentUserId = Backendless.UserService.loggedInUser(); 

       if(!currentUserId.equals("")) 
       { 
        Backendless.UserService.findById(currentUserId, new DefaultCallback<BackendlessUser>(LoginActivity.this, "Logging in...") 
        { 
         @Override 
         public void handleResponse(BackendlessUser currentUser) 
         { 
          super.handleResponse(currentUser); 
          Backendless.UserService.setCurrentUser(currentUser); 
          startActivity(new Intent(getBaseContext(), LoginSuccessActivity.class)); 
          finish(); 
         } 
        }); 
       } 
      } 

      super.handleResponse(isValidLogin); 
     } 
    }); 

    SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0); 
    boolean hasLoggedIn = settings.getBoolean("loggedIn", false); 
    SharedPreferences.Editor editor = settings.edit(); 
    editor.putBoolean("loggedIn", true); 
    editor.commit(); 

} 

private void initUI() 
{ 
    facebookButton = (Button) findViewById(R.id.loginFacebookButton); 

    facebookButton.setOnClickListener(new View.OnClickListener() 
    { 
     @Override 
     public void onClick(View view) 
     { 
      onLoginWithFacebookButtonClicked(); 
     } 
    }); 
} 

public void onLoginWithFacebookButtonClicked() 
{ 
    Backendless.UserService.loginWithFacebook(LoginActivity.this, new SocialCallback<BackendlessUser>(LoginActivity.this) 
    { 
     @Override 
     public void handleResponse(BackendlessUser backendlessUser) 
     { 
      startActivity(new Intent(getBaseContext(), LoginSuccessActivity.class)); 
      finish(); 
     } 
    }); 
} 

然而,在成功登錄後,Backendless控制檯不顯示用戶的名稱。我認爲我的代碼中沒有任何語法錯誤,我只能錯過一些東西。

感謝您的幫助!

回答