Parse.com unpinInBackground不起作用

时间:2015-08-07 07:54:00

标签: java android parse-platform

我们正在实施非常简单的流程。首先固定一个项目:

 object.pinInBackground(new SaveCallback() {
         @Override
         public void done(ParseException e) {
                if (e == null) {
                    // success
                } else {
                    // error
                }
          }
 });

然后我解开它:

object.unpinInBackground(new DeleteCallback() {
    @Override
    public void done(ParseException e) {
          mObjects.remove(object);
          mObjectsAdapter.notifyDataSetChanged();
    }
});

但是!当我检查本地数据存储区时,如下所示:

ParseQuery<Object> query = ParseQuery.getQuery("Object");
query.fromLocalDatastore().findInBackground(new FindCallback<Object>() {
        @Override
        public void done(List<Object> objects, ParseException e) {
                // list of object contains the unpined object!
        }
});

对象列表包含之前的所有未经处理的对象!

这是我做错了什么,不明白还是Parse.com中有一些错误?

3 个答案:

答案 0 :(得分:0)

离开this

您可能需要这样做:

object.unpinInBackground("Object Name", new DeleteCallback() {
    public void done(ParseException e) {
        if (e == null) {
            // successful
        } 
        else {
            // unsuccessful
        }
    }
 });

您需要指定要尝试取消固定的对象的名称。

答案 1 :(得分:0)

您无法取消固定具有引用对象的对象

可能你有另一个对象,它引用了你想要删除的对象。

所以你必须先删除它们。

答案 2 :(得分:0)

对我来说,答案是我调用了saveEventually()。 当使用saveEventually()问题是对象不能消失,直到我们将在线。但随后对象飞到服务器 - 将不会被删除。