Manage Development and Production environment using Sandbox
In the previous article, I introduced the use of Sandbox and compare that with the traditional way of handling app data.
In order to prevent messing up the data between Development and Production, this is my setup.
Development — Non-Sandbox
Production — Sandbox
Here are the reasons.
1) Mac App Store requires using Sandbox
It is still early to decide whether I will distribute thru Mac App Store or other channels. It is better to adapt to that environment at the early stage. Change settings from the ground up is pain in the ass.
2) User system environment is unknown
When the app is distributed to users, all kinds of situations could happen. Using sandbox will help reducing conflicts with other system tools. This is based on the trust to Apple system architecture.
3) Customer support is easier
In case you need to ask your users to visit the data directory to check or clean up content, it is easier to locate one single sandbox container than multiple locations.
For development environment, we as developers know the working flow of the app, so we could always trace the behavior of the application. It is better to keep the simplicity to users. Thus, even setting up Sandbox takes extra steps in the beginning, it is totally worth to do it.
I am taking a challenge to write a post every day for 180 days. The content will be related to my life as a father, entrepreneur, developer and trainer.
Sandboxing is the idea to keep data access controllable for the application.medium.com