Итак, у меня есть изолированное приложение, которое позволяет пользователям перетаскивать файлы из Finder в окно проекта. Я хотел бы использовать эти файлы из их существующего местоположения, то есть по ссылке, а не копировать их в папку проекта, поскольку у пользователя может быть большая существующая библиотека файлов.
Во время работы приложения эти файлы полностью доступны для чтения. (Они в формате .mp4, и я могу просмотреть их в представлении AVPlayer).
Когда я сохраняю проект приложения, я включаю NSURL файлов. Когда приложение перезапускается и позже повторно открывает проект, файлы становятся недоступными, а в консоли отображается сообщение deny(1) file-read-data, что означает, что файл недоступен для восстановления. (Доступ запрещен).
Предположительно, это связано с тем, что файлы находятся за пределами песочницы. Тем не менее, они были читабельными, когда были помещены в приложение. Мне кажется, что приложение видит их как «выбранные пользователем» при первом включении, и поэтому они доступны для чтения, но в следующем сеансе, поскольку они загружаются из NSCoder как NSURL, они не считаются выбранными пользователем и поэтому становятся недоступными!
Мое приложение в настоящее время имеет следующие права: com.apple.security.files.user-selected.read-only com.apple.security.files.user-selected.read-write
Есть ли что-то, что мне нужно сделать с правами и т. д., чтобы разрешить повторную загрузку файлов позже?