У меня возникли проблемы с отправкой приложения в App Store.Это связано с тем, что эта обновляемая база данных слишком велика для ограничений резервного копирования iCloud.Большая часть данных в БД является статической, но в одной таблице записывается расписание просмотра слов пользователем (это словарный тест).
Насколько я могу судить, у меня есть два или три реалистичных варианта.Первый - поместить всю базу данных в каталог Library / Cache.Это должно быть принято, потому что это не резервное копирование в iCloud.Однако нет гарантии, что оно будет поддерживаться во время обновлений приложений, согласно этой записи в «Сделать резервные копии приложений более эффективными» по этому URL:
http://developer.apple.com/library/IOs/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/PerformanceTuning/PerformanceTuning.html
Files Saved During App Updates
When a user downloads an app update, iTunes installs the update in a new app directory. It then moves the user’s data files from the old installation over to the new app directory before deleting the old installation. Files in the following directories are guaranteed to be preserved during the update process:
<Application_Home>/Documents
<Application_Home>/Library
Although files in other user directories may also be moved over, you should not rely on them being present after an update.
Второй вариантпоместить данные в каталог NSDocuments или NSLibrary, как это отмечено с помощью skipBackupFlag.Однако одна проблема заключается в том, что этот флаг не работает для iOS 5.0 и более ранних версий в соответствии с этой записью в разделе «Как предотвратить резервное копирование файлов в iCloud и iTunes?»в
https://developer.apple.com/library/ios/#qa/qa1719/_index.html
Important The new "do not back up" attribute will only be used by iOS 5.0.1 or later. On iOS 5.0 and earlier, applications will need to store their data in <Application_Home>/Library/Caches to avoid having it backed up. Since this attribute is ignored on older systems, you will need to insure your app complies with the iOS Data Storage Guidelines on all versions of iOS that your application supports
Это означает, что даже если я использую «skipBackupFlag», у меня все еще будет проблема с тем, что база данных копируется в облако, ясчитать.
Итак, третий вариант, который является довольно уродливым взломом, - разделить базу данных на две части.Поместите обновляемую часть в каталог NSLibrary или NSDocuments, а оставшуюся часть - в ресурсы приложения.В этом случае небольшая обновляемая часть хранится в облаке, а остальная часть остается в каталоге ресурсов приложения.Проблема в том, что это разбивает базу данных без веской причины и приводит к возможным проблемам с производительностью, если две базы данных открыты одновременно.
Итак, мой вопрос в том, верна ли моя интерпретация правил?Я собираюсь пойти с вариантом 3?
ps Я заметил, что в моем последнем сообщении цитируемые URL были отредактированы по ссылкам без отображения URL.Как мне это сделать?