My application was lately declined in the application store for storing data within the Documents directory. I'd moved it there since with the most recent change, the db must certainly be writeable - it's no more read-only.
In researching the answer, I have read it's really more suitable to make use of NSLibraryDirectory. Is so, and most importantly, will that address Apple's concerns? Their complaint would be that the application allows the consumer download to much content (it does not allow the user download any unless of course you count the db), which it's storing "an excessive amount of data" within the "incorrect location." The information is 8 megabytes, but tend to grow to around 10 or 12 megabytes max.
Really its due to iCloud.
using iCloud, Application's document directory is synced to cloud and also to other products and therefore Apple want designers to keep that data in document directory which they would like to sync with iCloud.
I found know this type among my buddies who work @ Apple California and I am not necessarily confident that these components is on Apple's documentation.
I'd this problem by having an update to some suite of applications I develop another week. The funny factor was that only five from the seven applications (the identical code base) were declined.
In my opinion the problem during my situation was copying assets in the .application bundle into ~/Documents.
My first make an effort to adhere to their new storage recommendations ended up being to implement the
do not backup turn on the files I had been copying into ~/Documents. No cope with that and so i needed to change my implementation not to copy the information whatsoever. The applications were quickly approved.
Your implementation is most likely different but in my opinion Apple no more loves copying things in the application bundle into ~/Documents, as it may be copying data unnecessarily (within their view).
They suggest copying into ~/Caches (or anything), but this is often removed in low storage situations and might not be suitable for your situation either.
Hope that can help.
An item I authored last year uses CoreData (having a SQLite data store). This database file is saved in ~/Library/Application Support//. It was approved by Apple without problem.
"Application Support" doesn't appear in ~/Library, so you will have to create it.
Documents isn't a good way to keep your database apply for several reasons. Apple has their reasons, given that they declined your application. One more reason would be that the Documents directory is obtainable through the user (via iTunes), and unless of course the consumer removing your database file isn't any large deal to the whole process of your application, it is advisable to place it where they are unable to so something with it directly and/or unintentionally.