2012-02-11 2 views
0

У меня есть приложение для рецептов, которое использует основные данные и покупки приложений. Каждый рецепт может иметь вложения мультимедиа, такие как изображения/видео. В базовых данных хранятся только текст рецептов и пути к файлам для этих вложений. Когда я покупаю рецепт, он добавляется в db, а его вложения в медиа загружаются на пользовательское устройство. Поскольку эти медиафайлы не созданы пользователем, они не должны копироваться iCloud в соответствии с iOS Data Storage Guidelines. Теперь, например, я купил несколько рецептов, а затем восстанавливаю iCloud. После восстановления у меня будут эти рецепты в моей базе данных, но медиа-файлов больше не будет. Каким будет лучший способ справиться с этим делом?Как восстановить загруженные медиафайлы после восстановления iCloud?

Единственный способ, который приходит мне на ум - проверить при запуске приложения. Если у меня есть рецепты, которые были приобретены в моей базе данных, то проверьте, существует ли папка, в которой хранятся медиафайлы, а не пустая. Если папка пуста, я бы удалил купленные записи из db и представил предупреждение пользователю, чтобы он хотел загрузить все его покупки. Затем я буду использовать средство restoreCompletedTransactions, чтобы загрузить их снова.

ответ

0

Вы в значительной степени ответили на свой собственный вопрос: сохраните имена файлов в своей базе данных, а затем после восстановления посмотрите, находятся ли эти файлы в файловой системе iPhone, используя NSFileManager, а если нет, загрузите их снова.

Смежные вопросы