Storing User Data in Application Support

I recently switched to a new MacBook Pro and decided to piecemeal move my data over so that I wouldn’t bring over old crusty preferences and files like that. This has worked quite well, but in two cases today, I found that some user data was stored in the Application Support folder. Since I hadn’t copied this directory over, when I ran the apps, I had no data and had to dig through an old Time Machine backup to find the data. To make matters worse, I’m storing my personal data on an encrypted disc image and in order to get the apps to run, I had to create a symbolic link to my disc image’s directory that contains the data.

Apple explicitly states in the developer documentation that the Application Support directory:

Contains application-specific data and support files such as third-party plug-ins, helper applications, templates, and extra resources that are used by the application but not required for it to operate. This directory should never contain any kind of user data. By convention, all of these items should be put in a subdirectory named after the application. For example, third-party resources for the application MyApp would go in Application Support/MyApp/. Note that required resources should go inside the application bundle itself.

In ReceiptWallet 1.0, I made this mistake for ease of use and stored user data in this directory, but when I moved to a document based app, I rectified this issue.

Developers, please read Apple docs and store user data in a user defined location or in Documents; Application Support is the wrong location for this data.

One Reply to “Storing User Data in Application Support”

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.