'sandboxd: negar arquivo-gravar-criar' ao escrever no próprio pacote do aplicativo
Eu escrevi um programa na loja Mac App, que exibe alguns gráficos. Ocasionalmente, atualiza essas informações pela Internet. Como com a maioria das pessoas, estou tendo que usar meu aplicativo Sandbox agora.
Quase tudo está funcionando, mas ao atualizar ele salva um arquivo no próprio pacote do meu aplicativo e falha com "sandboxd: negar arquivo-gravar-criar"
Eu apenas uso fopen (..., "wb")
O caminho passado para o fopen é: /Users/MyUser/Library/Developer/Xcode/DerivedData/MyApp-czuwveatgjffaggwqjdqpobjqqop/Build/Products/Debug/My.app/Contents/Resources/the_file.foo
O caminho é criado usando:
CFBundleRef bundle = CFBundleGetMainBundle();
CFURLRef url = CFBundleCopyResourcesDirectoryURL(bundle);
CFURLGetFileSystemRepresentation(url, true, (UInt8*)buf, sizeof(buf));
Estou fazendo algo obviamente errado aqui? Meu aplicativo é multi-plataforma, então idealmente eu continuaria usando fopen / etc. Pelo que entendi, o aplicativo deve ter permissão para escrever em seu próprio pacote, mesmo que seja impedido de fazer algo em outro lugar?
obrigado!