我最初的应用内购买包含在主要包中,格式为Core Data / Sqlite文件。现在我希望Apple能够主持所有进一步的IAP。到目前为止,我已经在iTunes连接中完成了设置,成功下载了文件并将它们从缓存移动到了应用支持目录。:
if ([fileManager moveItemAtPath:fullPathSrc toPath:fullPathDst error:&error] == NO) {
NSLog(@"Error: unable to move item: %@", error);
}
此时源路径为:
/private/var/mobile/Containers/Data/Application/54EBE737-AB3C-414D-ABE6-C472469431EF/Library/Caches/7AAD2581-5933-4ACF-BE5D-2F7FB134F914.zip/Contents/Packet5.sqlite
,目标路径为:
的/ var /移动/容器/数据/应用/ 54EBE737-AB3C-414D-ABE6-C472469431EF /库/应用程序 支持/下载/ Packet5.sqlite
看起来很好,直到我的Core Data类尝试访问sqlite文件,如下所示:
NSURL *modelURL = [NSURL fileURLWithPath:(NSString *)packetLocator[currPacketNum]];
// packetLocator[currPacketNum] contains the destination path above.
然后我收到以下错误消息:
CoreData:无法在路径中加载键控归档模型 “的/ var /移动/容器/数据/应用/ 54EBE737-AB3C-414D-ABE6-C472469431EF /库/应用程序 支持/下载/ Packet5.sqlite'
也许存在全球问题;即,是否有可能与Apple托管核心数据?有没有人成功托管过核心数据,或者知道解决此问题的方法?
答案 0 :(得分:0)
我混淆了两种不同类型的核心数据文件,即描述数据项之间关系的“momd”数据模型文件,以及sqlite / json核心数据文件本身。每个配置只有一个“momd”文件 - 它在执行期间无法更改,并且它位于主捆绑包中。我正在检索模型文件,好像它是一个核心数据文件 - 哎呀!