在android中加载上次登录的用户信息

在android中加载上次登录的用户信息,android,sharedpreferences,Android,Sharedpreferences,我正在用android开发一个应用程序。为此,我让用户使用他们的Facebook或Google ID登录。我已将用户登录信息存储在数据库中 现在,下次打开应用程序时,我想获取上次登录帐户的详细信息,并基于此加载用户详细信息 我认为我可以做到这一点的一种方法是将其作为共享引用进行处理 我认为可以这样做的另一种方法是在我的用户详细信息表中保留一列,将其标记为最后登录的帐户 我想知道这两种方法中是否有一种是实现这一点的首选方法。或者有其他不同的方法来实现这一点吗?将服务器返回的令牌存储在共享prefs

我正在用android开发一个应用程序。为此,我让用户使用他们的Facebook或Google ID登录。我已将用户登录信息存储在数据库中

现在,下次打开应用程序时,我想获取上次登录帐户的详细信息,并基于此加载用户详细信息

我认为我可以做到这一点的一种方法是将其作为共享引用进行处理

我认为可以这样做的另一种方法是在我的用户详细信息表中保留一列,将其标记为最后登录的帐户


我想知道这两种方法中是否有一种是实现这一点的首选方法。或者有其他不同的方法来实现这一点吗?

将服务器返回的令牌存储在共享prefs中是一种很好的方法。只是不要将实际的帐户信息存储在共享首选项中。

我发现在这种情况下非常方便,它基于共享首选项

典型实施:

private void signIn() {
    String username = mUsernameEditText.getText().toString();
    ...

    if (username.isEmpty() || password.isEmpty()) {
        // show error dialog
    } else {
        Remember.putString(Constant.LAST_USED_USERNAME, username);
        YourApi.getInstance().login(username, password);
    }
}
然后在
onCreateView()
上或在初始化登录屏幕UI的任何位置

...
String lastLogin = Remember.getString(Constant.LAST_USED_USERNAME, "");
if (lastLogin is not empty) {
    mUsernameEditText.setText(lastLogin);
}

对我来说,SharedReferences使用SharedReferences。