This is a classic iOS problem - where should I save my data? I have written a few iOS applications now and have used core data as well as plist files. Furthermore, I normally use NSUserDefaults to save user settings, which is essentially one small dictionary with keys and values. In my (perhaps incorrect) opinion, NSUserDefaults is the simplest way to store information that is required globally in an application.
I have relational data that is being downloaded from a server as a JSON object and was wondering how far I could push NSUserDefaults. My data could be as large as a few megabytes in size. I know NSUserDefaults will handle this as I have tried, however, are there any risks involved with saving the data in this way, despite the fact it isn't necessarily for storing large large amounts of data? Would my app get rejected? Could there potentially be memory and performance issues?