我們有一個應用程序與核心數據和後備存儲是一個SQLite數據庫。核心數據和iOS數據存儲指南
它包含關鍵數據(即它需要始終可以脫機使用)。
它目前存儲在Documents目錄中,因此由於iOS數據存儲指南而被拒絕。
該解決方案似乎是使用「不備份」標記標記它。
但是,我還沒有看到任何指導方針。也就是說,我應該手動將此文件標記爲「不備份」,還是有一些我應該啓用的核心數據選項?
我們有一個應用程序與核心數據和後備存儲是一個SQLite數據庫。核心數據和iOS數據存儲指南
它包含關鍵數據(即它需要始終可以脫機使用)。
它目前存儲在Documents目錄中,因此由於iOS數據存儲指南而被拒絕。
該解決方案似乎是使用「不備份」標記標記它。
但是,我還沒有看到任何指導方針。也就是說,我應該手動將此文件標記爲「不備份」,還是有一些我應該啓用的核心數據選項?
這是Apple建議的文檔之一。我跟着它,用「不備份」屬性標記了相關文件,重新提交併再次被拒絕。這就是爲什麼我發佈這個問題,因爲我不知道我是否做了正確的事情。有沒有辦法檢查你是否在特定的文件上設置了屬性? – Snowcrash 2012-04-23 20:36:28
在iOS系統5.1或更高版本,最好使用新NSURLIsExcludedFromBackupKey
或kCFURLIsExcludedFromBackupKey
文件屬性,而不是setxattr
(iOS 5.0.1 compatible)。
- (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; }
欲瞭解更多信息,請參閱 "App Backup Best Practices" section of the iOS App Programming Guide。
蘋果拒絕我的應用程序出於同樣的原因,你能說你如何克服它? – 2013-03-22 06:28:16
一段時間後再次提交,並通過了。 5.0.1和5.1之間的一些變化。從5.1開始,NSURLIsExcludedFromBackupKey和kCFURLIsExcludedFromBackupKey文件屬性完成這項工作。 – Snowcrash 2013-03-27 08:59:27