gpt4 book ai didi

ios - 核心数据 "do not backup"标志

转载 作者:可可西里 更新时间:2023-11-01 04:44:24 26 4
gpt4 key购买 nike

我的应用程序有一个核心数据数据库,该数据库在首次启动时填充以供离线使用。然后,此数据库会在每次启动时与在线数据库同步。只有第一次启动包含大量数据。该应用程序还从网络上获取一些图像,然后将其转换为二进制数据并保存到核心数据以供离线使用。只有当用户导航到包含一些图像的部分时才会发生这种情况,并且只会获取这些图像(该应用不会一次获取所有图像,仅在需要时才获取)。

我正在使用 Magical Record。

我不会在运行时将任何类型的数据保存到文件中。但是我的应用程序被拒绝并显示此消息:

我们发现您的应用不符合 App Store 审核指南所要求的 iOS 数据存储指南。

它建议我检查“设置 > iCloud > 存储和备份 > 管理存储”,但我的应用程序甚至没有显示。

我知道我应该将核心数据标记为不备份到 iCloud,但我不知道该怎么做。据说我应该实现这样的东西,但不知道如何将它应用到我的核心数据文件。

- (BOOL)addSkipBackupAttributeToItemAtURL:(NSURL *)URL {
assert([[NSFileManager defaultManager] fileExistsAtPath: [URL path]]);

NSError *error = nil;
BOOL success = [URL setResourceValue: [NSNumber numberWithBool: YES]
forKey: NSURLIsExcludedFromBackupKey error: &error];
if(!success){
NSLog(@"Error excluding %@ from backup %@", [URL lastPathComponent], error);
}
return success; }

最佳答案

下面可能比更改 MacigalRecord 的源文件更好。迅速

MagicalRecord.setupCoreDataStackWithAutoMigratingSqliteStoreNamed("somedb.sqlite")
let dbPath = NSPersistentStore.MR_urlForStoreName("somedb.sqlite")
do {
try dbPath.setResourceValue(NSNumber(bool: true), forKey: NSURLIsExcludedFromBackupKey)
} catch let error {
print(error)
}

关于ios - 核心数据 "do not backup"标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14500861/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com