我正在使用Parse作为我的后端,我正试图“喜欢”另一个用户在应用上发布的帖子。我正在查询获取帖子,然后将喜欢的数量增加1,然后将当前用户的对象ID添加到一个数组中,该数组包含喜欢该帖子的所有用户ID。
// printing
void afisare(int *prime, int index)
{
int i=0;
printf("Numerele prime sunt:");
for (i = 0 ; i <= index ; i++)
printf("%d", prime[i]);
// ^^^
}
我得到的错误:
carLikeQuery.getInBackground(carItem.getObjectId(), new GetCallback<ParseObject>() {
@Override
public void done(ParseObject object, ParseException e) {
object.increment("likes");
object.addUnique("usersWhoLike", ParseUser.getCurrentUser().getObjectId());
object.saveInBackground(new SaveCallback() {
@Override
public void done(ParseException e) {
if(e==null) {
Log.d("SAVE", "Like saved :)");
} else {
Log.e("SAVE", "Not saved :( :" + e.getLocalizedMessage());
}
}
});
}
});
我从某处看到了ParseUser的源代码:
E/SAVE: Not saved :( :java.lang.IllegalArgumentException: Cannot save a ParseUser that is not authenticated.
在我的代码中执行相同类型的检查会发现currentUser 是AUTHENTICATED而非DIRTY。
问题是什么?说实话,我想说它在今天之前工作得很好,但很明显我正在改变一些事情并犯了一个错误,我无法找到它!任何帮助将不胜感激。
答案 0 :(得分:0)
我通过创建一个具有相同数据结构/布局的全新Parse应用程序解决了这个问题。它只是简单地工作而没有任何代码更改。