Мое приложение работает с пользовательскими txt-файлами (создавать, изменять, удалять) внутри любой выбранной пользователем папки. Я просто храню закладку, чтобы получить доступ к выбранной пользователем папке и файлам.
Теперь, с macOS Catalina, когда исходная папка находится внутри iCloud Drive, система все еще позволяет мне создавать и редактировать файлы. Но не позволяет удалить мусор. Когда я пытаюсь сделать это через [[NSFileManager defaultManager] trashItemAtURL: ... ]
, я получаю следующую ошибку:
Error Domain=NSCocoaErrorDomain
Code=3328
"<filename> couldn’t be moved to the trash
because the volume “<APFS volume name>”
doesn’t have one."
UserInfo={
NSURL=file:///... <filepath>.txt,
NSUserStringVariant=Trash
}
Примечание: это толькопроисходит, когда приложение помещается в «песочницу».
Есть идеи, как правильно удалить файл?
PS Я знаю, что есть NSWorkspace recycle...
метод, но он выдает дополнительный запрос на удаление, который мне не подходит.
PPS Я все еще могу использовать метод [[NSFileManager defaultManager] removeItemAtURL: ...]
, но мне нужен целевой файл для восстановления в случае, если пользователь передумает.