3

We have a Spotify based app that uses the latest libspotify library. https://github.com/spotify/cocoalibspotify

The app was rejected by Apple for not following data storage guidelines. Below is the information:

In particular, we found that on launch and/or content download, your app stores 2.09 MB. To check how much data your app is storing:

  • Install and launch your app
  • Go to Settings > iCloud > Storage & Backup > Manage Storage
  • If necessary, tap "Show all apps"
  • Check your app's storage

The iOS Data Storage Guidelines indicate that only content that the user creates using your app, e.g., documents, new files, edits, etc., should be backed up by iCloud.

Temporary files used by your app should only be stored in the /tmp directory; please remember to delete the files stored in this location when the user exits the app.

Data that can be recreated but must persist for proper functioning of your app - or because customers expect it to be available for offline use - should be marked with the "do not back up" attribute. For NSURL objects, add the NSURLIsExcludedFromBackupKey attribute to prevent the corresponding file from being backed up. For CFURLRef objects, use the corresponding kCFURLIsExcludedFromBackupKey attribute.

The problem is that we are not storing anything other than what Spotify might be storing through the library. Any suggestions or recommendations will be very helpful.

1 Answers1

0

I'll fix this when I return to work after my vacation. In the meantime, the message you pasted in pretty much tells you how to fix it — add the NSURLIsExcludedFromBackupKey attribute to the two directories Spotify is creating. One is named after your user agent inside the NSApplicationSupportDirectory, and the other under the NSCachesDirectory. The code for creating these directories is in SPSession.m in the initWithApplicationKey:… method - it should be trivial to add the required metadata keys to those two directories.

iKenndac
  • 18,730
  • 3
  • 35
  • 51