Сохранение CKAsset из базовых данных
У меня есть некоторые данные, например изображения, которые хранятся в Базовых данных как двоичные данные и помечены как "Разрешить внешнее хранение". Я хотел бы записать эти данные в CloudKit. Можно ли получить URL-адреса для этих данных и передать их в CKAsset или каким-то образом преобразовать эти данные в CKAsset без двойной записи этих данных в некоторые временные файлы? Спасибо.
1 ответ
Прямой доступ к внешним двоичным данным не поддерживается, и для них нет API. Неофициально не трудно понять, в каком каталоге хранятся файлы, но это бесполезно, потому что
- Имена файлов - это UUID, и нет документированного способа связать управляемый объект с UUID, поэтому вы не знаете, какой файл использовать.
- Опция заключается в разрешении внешнего хранилища, поэтому нет гарантии, что внешний файл существует. Некоторые экземпляры могут не использовать внешнее хранилище.
Я не уверен что CKAsset
требует, но вы должны сначала посмотреть двоичные данные через управляемый объект.