Android Parse:无法更新本地用户

jwB*_*ide 8 android parse-platform

我在自定义ParseUser对象中有一个名为Approved的自定义布尔字段.我们通过网络应用将此字段从false更改为true.根据文档,我应该能够在使用fetchInBackground()更改标志后更新currentUser,如下所示:

ParseUser.getCurrentUser().fetchInBackground(new GetCallback<ParseObject>() {
    @Override
    public void done(ParseObject parseObject, ParseException e) {
        Log.v("qwer", "fetched User: " + ((CustomUser)parseObject).isApproved());
    }
});
Run Code Online (Sandbox Code Playgroud)

但即使已批准的标志已设置为true,从服务器返回的结果始终为false.除非我注销并再次登录,否则currentUser和相应的字段将与服务器同步.

为什么fetchInBackground()不能为本地用户工作,如果我错误地使用它,我该如何更新currentUser.

Joe*_*Min 1

请参阅链接,重点是在您的班级pinInBackground中使用并启用本地数据存储。Parse.enableLocalDatastore(yourContext);Application


更新:

不知道这是否对你有帮助,但我确实和你有类似的情况:

我做了一个典型的user.put("userVerified", true);thenuser.saveInBackground来保存一个布尔值,指示用户是否已被验证,然后在下一个活动中我用来user.getBoolean("userVerified")检索标志......这是您可能会考虑的事情吗?