19.3. Creating and Managing Folders for Apps in iCloud
You want to store specific files into specific folders within the user’s iCloud storage for your app.
Follow these steps:
Make sure your app is set up to use iCloud (see Recipe 19.1)
Select your project file (with the blue icon) in Xcode and select the Summary tab.
In the Summary tab, scroll down until you get to the Entitlements section. Find the iCloud Containers list and copy the first value in that list. The value for the project that I have set up for this recipe is
com.pixolity.Creating-and-Managing-Folders-for-Apps-in-iCloud. This value will be different for your app.
In your app delegate, place the string that you copied from iCloud Containers list, into a string. Prefix this string with your Team ID (see Recipe 19.2 on how to find your Team ID).
Now instantiate an object of type
NSFileManagerand pass the path that you created in the previous two steps, to the
URLForUbiquityContainerIdentifier:method of this class. The value of this method will be the local address for iCloud storage on the device that is running your app. Let’s call this path Root iCloud Path.
Append the folder name that you want to create to the Root iCloud Path (see previous step). Keep the resulting path in a string or an instance of
fileExistsAtPath:isDirectory:method of your file manager. If this method returns
NO, then go on to create the folder using the