«sandboxd: запретить файл-запись-создание» при записи в собственный пакет приложения

Я написал программу в магазине приложений Mac, которая отображает некоторую графику. Иногда он обновляет их в интернете. Как и большинству людей, я сейчас вынужден помещать в песочницу свое приложение.

Почти все работает, но при обновлении он сохраняет файл в собственном пакете моего приложения и завершается ошибкой с помощью «sandboxd: deny file-write-create»

Я просто использую fopen (..., & quot; wb & quot;)

Путь, пройденный в fopen: /Users/MyUser/Library/Developer/Xcode/DerivedData/MyApp-czuwveatgjffaggwqjdqpobjqqop/Build/Products/Debug/My.app/Contents/Resources/the_file.foo

Путь создается с помощью:

CFBundleRef bundle = CFBundleGetMainBundle();
CFURLRef url = CFBundleCopyResourcesDirectoryURL(bundle);
CFURLGetFileSystemRepresentation(url, true, (UInt8*)buf, sizeof(buf));

Я делаю что-то явно не так здесь? Мое приложение мультиплатформенное, поэтому в идеале я бы продолжал использовать fopen / etc. Как я понял, приложению следует разрешить запись в свой собственный пакет, даже если оно заблокировано от каких-либо действий в другом месте?

Спасибо!

Ответы на вопрос(1)

Ваш ответ на вопрос