Как вы сохраняете ссылки на изображения в обновлениях приложений на устройствах iOS - PullRequest
0 голосов
/ 20 марта 2020

Я разработал приложение Flutter, которое захватывает изображения с помощью камеры, и храню ссылки на файлы изображений с помощью Shared Preferences.

. При обновлении приложения iOS имя файла Shared Preference сохраняется как ожидается, но изображение больше не отображается на устройстве iOS (и, кажется, больше не существует) File(_imageFileRef).existsSync() имеет значение false

Например, при iPhone файл изображения сохраняется как

/private/var/mobile/Containers/Data/Application/580A9879-23CD-413D-A785-DB910673DF74/tmp/some_guid_image_name.jpg

При обновлении приложения этот файл больше не существует.

Куда сохранять файлы изображений в iOS, чтобы они сохранялись во всех обновления?

Функциональность отлично работает на Android устройствах.

1 Ответ

0 голосов
/ 21 марта 2020

Не получив ответов, я углубился немного глубже и обнаружил, что ...

... каталог tmp, в который записываются изображения, предназначен для временных файлов, которые не нужно сохранять между запусками вашего приложения. Ваше приложение должно удалять файлы из этого каталога, когда они больше не нужны; однако система может удалить этот каталог, когда ваше приложение не запущено. Содержимое этого каталога не резервируется iTunes или iCloud.

Поэтому, чтобы данные сохранялись в течение обновлений приложения, мне нужно записать в каталог Documents

Информация получена здесь

...