对不起,如果这是一个愚蠢的问题,但这真的让我很生气。

if (ParseUser.getCurrentUser().getList("isFollowing") == null) {

        List<String> emptyList = new ArrayList<String>();
        ParseUser.getCurrentUser().put("isFollowing", emptyList);
    }

上面代码中的问题是,它仅在我第一次运行应用程序时返回 null,即使我再次将其设为 null。

这个问题在我的代码中无处不在,getCurrentUser 方法从不返回最新信息......

我认为问题在于 getCurrentUser 方法返回数据的缓存版本。我该如何更新?

我正在使用 parse 1.13.0bolts tasks 1.3.0

编辑:
现在我知道当我使用 ParseUser.getCurrentUser().saveInBackground(); 时一切都搞砸了

这有帮助吗?

编辑2:
问题似乎出在以下代码中的 saveInBackground() 方法中:
ParseUser.getCurrentUser().getList("isFollowing").add(users.get(
ParseUser.getCurrentUser().saveInBackground();

我第一次通过保存时它运行良好,但第二次和其余的什么都不做......

我知道我现在很烦人,但我已经被这个问题困扰了大约 5 天......

请帮忙!

最佳答案

这是您刷新当前用户的方式:

ParseUser.getCurrentUser().fetchInBackground(new GetCallback<ParseObject>() {
        @Override
        public void done(ParseObject object, ParseException e) {

        }
    });

10-08 15:04