ParseUser.logout() 的不当行为

Misbehaviour of ParseUser.logout()

编写一个小代码片段,其中在满足某些条件后注销 ParseUser。有时它工作得很好,有时它会抛出如下所示的 classcastexpection

java.lang.classcastexception: org.json.jsonobject cannot be cast to java.lang.string

我不明白为什么会这样?

这是我的代码片段:-

ParseUser currUser1 = ParseUser.getCurrentUser();
currUser1.put("isLogin", false);
currUser1.saveInBackground();
Log.d("UserToLogout", currUser1.getUsername());

int counter=0;
while(counter<11) {
    if (currUser1.getBoolean("isLogin")) {
        Log.d("bit", String.valueOf(currUser1.getBoolean("isLogin")));
        counter = counter + 1;
    } else {
        Log.d("bit_0", String.valueOf(currUser1.getBoolean("isLogin")));
        ParseUser.logOut();
        break;
    }
}

请帮我解决这个问题。 谢谢

这个问题(很可能)是因为您正在调用 currUser1.saveInBackground(); 而您没有在 ParseUser.logOut();.

之前等待它的结果

为了更好地了解情况是否如此,请尝试更改

currUser1.saveInBackground();

currUser1.save();