I have submited my application to the AppStore, but my application had rejected.
This is a reason:

I already work follow this link, but my application was rejected too. 2.23: Apps must follow the iOS Data Storage Guidelines or they will be rejected
I have submited my application to the AppStore, but my application had rejected.
This is a reason:

I already work follow this link, but my application was rejected too. 2.23: Apps must follow the iOS Data Storage Guidelines or they will be rejected
This generally means that you're storing some data, cache files, or profile images for example, that can be recreated/redownloaded by your app, in a location that iCloud will back up. That wastes the users data, and server space for Apple. They've really been cracking down on this over the last 6 months or so.
You can either store the files in a place not backed up by iCloud (/Library/Application Support), or flag the files with the do not backup attribute.
Get that folder in code like this:
NSString* appSupportFolder = [NSSearchPathForDirectoriesInDomains(NSApplicationSupportDirectory, NSUserDomainMask, YES) firstObject];
Here's a category you can use to set the do not backup attribute:
@implementation NSURL (DoNotBackupAttribute)
- (BOOL)dw_addDoNotBackupAttribute
{
if (![[NSFileManager defaultManager] fileExistsAtPath:[self path]]) return NO;
__autoreleasing NSError* error = nil;
if (![self setResourceValue:@(YES) forKey:NSURLIsExcludedFromBackupKey error:&error]) {
NSLog(@"Error: failed to set do not backup attribute on file %@, error: %@", self, [error localizedDescription]);
}
return YES;
}
@end
The problem is that your app starts by storing 252.96MB of data!
You can't design an app that way. Remember, the user has only limited storage and backup space. Apple's documentation is very clear about the rules here:
https://developer.apple.com/icloud/documentation/data-storage/index.html
You should be storing your big data only in the Caches directory, where it can be purged and where it won't be backed up.
If you are storing a lot of data that can be downloaded again or regenerated, you will want to store it in <Application_Home>/Library/Caches rather than the <Application_Home>/Documents directory.
Alternatively, you can prevent the device from backing up certain files to iCloud using the addSkipBackupAttributeToItemAtURL method in your app delegate.