My Mac app is sandboxed and I need to save a file. Where do I save this file? I can't seem to find the specific place where this is allowed without using an open panel. This is how I do it on iOS:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *path = [paths objectAtIndex:0];
What is the equivalent for the sandboxed directory on Mac?
It's inside the apps themselves. The apps are really just folders that looks like program files. If you right click on an app you press "Show Contents" and it will open the app as a folder where you are free to search for whatever files you want.
Overview. The App Sandbox is an access control technology that macOS provides and enforces at the kernel level. The sandbox's primary function is to contain damage to the system and the user's data if the user executes a compromised app.
That code snippet works on the Mac regardless of whether your application is sandboxed.
In a non-sandboxed Mac app, path
will refer to the Documents folder in your home: e.g. /Users/username/Documents
.
In a sandboxed app, it refers to a folder within the app sandbox: e.g. /Users/username/Library/Containers/com.yourcompany.YourApp/Documents
See the docs for details.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With