登录后设置当前解析用户名

时间:2015-04-26 18:37:49

标签: android parse-platform

我使用Parse构建用户个人资料。 有没有人知道为什么Parse中的服务器ROW没有更新?

代码:

String parseSessionToken = ParseUser.getCurrentUser().getSessionToken();
Log.d("ParseUser.getSessionToken", parseSessionToken);

ParseUser.becomeInBackground(parseSessionToken, new LogInCallback() {
    public void done(ParseUser user, ParseException e) {
        if (user != null) {
            // The current user is now set to user.
            Log.d("ParseUser before getUsername", user.getUsername());
            user.setUsername(stringUserName);
            Log.d("ParseUser after getUsername", user.getUsername());

        } else {
            // The token could not be validated.
            Log.d("ParseUser after fail", e.toString());

        }
    }
});

日志:

04-27 02:30:21.730      677-677/com.di D/ParseUser.getCurrentUser objectID﹕ cUCPqKIV4HQe892eamTP0Ocyv
04-27 02:30:23.450      677-677/com.di D/ParseUser before getUsername﹕ h3@msn.com
04-27 02:30:39.100      677-677/com.di D/ParseUser after getUsername﹕ h3

Parse.com仍将String保留在旧数据中。 (我已经重装了) enter image description here

请帮助,谢谢。

1 个答案:

答案 0 :(得分:2)

设置用户名后,您需要调用save方法。您可以使用以下方法;

ParseUser parseUser = ParseUser.getCurrentUser();
parseUser.setUsername(stringUserName);
parseUser.saveInBackground(new SaveCallback() {
    @Override
    public void done(ParseException e) {
        if (null == e) {
            // report about success
        } else {
            // report about error 
        }
    }
})

希望这会有所帮助;

问候。