我最近决定转向StackMob (从解析器)。我已经成功地设置了核心数据,并且可以对StackMob数据存储进行读写。
到目前为止,StackMob向用户提供了一个项目列表。如果用户决定在我的应用程序上使用项目,我希望该项目可以离线使用,这样他就可以在不连接到stackmob的情况下使用它。
我正在考虑创建一个本地核心数据,并将用户选择的项目复制到那里。我的第一个问题是,如果我可以对两个核心数据(stackmob和local)使用相同的对象。如果这是正确的方法。
发布于 2013-01-30 05:24:55
最新的sdk包含对核心数据缓存的支持。详细信息在此blog post中。
默认情况下,缓存系统处于关闭状态。要打开它,只需在初始化核心数据存储之前,在App Delegate文件中将SM_CACHE_ENABLED标志设置为YES。该标志在SMCoreDataStore.h中声明。
它还包括如何控制缓存的代码示例……
SMClient *client = [[SMClient alloc] initWithAPIVersion:@"0" publicKey:@"XXXX"];
SMCoreDataStore *coreDataStore = [client coreDataStoreWithManagedObjectModel:myModel];
[client.session.networkMonitor setNetworkStatusChangeBlockWithCachePolicyReturn:^SMCachePolicy(SMNetworkStatus status) {
if (status == Reachable) {
return SMCachePolicyTryNetworkElseCache;
} else {
return SMCachePolicyTryCacheOnly;
}
}];https://stackoverflow.com/questions/14578332
复制相似问题