我目前在我的ios项目中添加了解析后端,并将其定义为与其本地数据存储一起工作。这一切似乎都很好,除了有时我收到“这个对象在脱机缓存中不可用”,据我所知,在使用本地数据存储时根本没有缓存(在我的AppDelegate中启用它,就像这样:解析enableLocalDatastore;)。问题是,如果我重新打开应用程序,最终该对象将被成功检索。以前有没有人遇到过这个问题?
编辑:我调用的顺序是
PFQuery *query = [PFQuery queryWithClassName:className];
[query fromLocalDatastore];
[query whereKey:someKey equalTo:someObject];
[query includeKey:@"someKey1"];
[query includeKey:@"someKey2"];
[query orderByAscending:@"date"];
[query findObjectsInBackground];它专为ios sdk 8.0和parse sdk 1.7.2构建
谢谢!
发布于 2015-10-11 20:19:17
在将不同的对象固定到本地数据存储之前,您需要创建该不可用对象的强引用。如果没有强引用,对象将从脱机缓存中清除,即使您锁定的当前对象和不同的对象将被保存。因此,当您重新查询时,您会得到上面的错误消息。
发布于 2015-12-28 20:26:12
我也有同样的问题。我的原因是,我在代码中的两个位置固定了具有相同名称的相同查询对象。当我删除带有name函数的pin并简单地将它们钉住时。对我来说一切都很好。
发布于 2015-11-29 03:17:59
确保还固定了可能与查询相关的任何对象,方法是调用
[query includeKey:@"someKey1"];用于指向可能需要的所有对象的所有指针。
https://stackoverflow.com/questions/30695796
复制相似问题