这是苹果公司关于拒绝的消息:
我 checkout 了设备和模拟器应用程序的数据文件。我发现,如果应用程序使用了一段时间,则启动时它的总应用程序数据可以存储5-6 MB。但是我卸载并重新安装了应用程序,然后再次检查,在启动应用程序时看到了约3MB的数据存储。
我不存储任何核心数据数据库或任何其他数据库文件。但是我已经意识到 Google Analytics(分析)和Google跟踪代码管理器在此路径上存储了一些sqlite数据:“AppData/Library”。我的意思是它不存储在以下路径中:“AppData/Library/Caches”。它对iOS数据存储准则有什么影响吗?
顺便说一句, iCloud 已禁用应用程序。
另外,我正在使用 SDWebImage 下载图像,它在启动时存储了将近3 MB的图像,并且在此路径上存储了图像数据:“AppData/Library/Caches”
您是否知道该怎么办才能解决此问题?
最佳答案
昨天我也收到了同样的拒绝消息。
我在application:didFinishLaunchingWithOptions:
中使用以下代码来查看我的应用程序在documents文件夹中具有的内容以及有关iCloud备份的每个项目的权限是什么:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *basePath = ([paths count] > 0) ? [paths objectAtIndex:0] : nil;
NSArray *documents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:basePath error:nil];
NSURL *URL;
NSString *completeFilePath;
for (NSString *file in documents) {
completeFilePath = [NSString stringWithFormat:@"%@/%@", basePath, file];
URL = [NSURL fileURLWithPath:completeFilePath];
NSLog(@"File %@ is excluded from backup %@", file, [URL resourceValuesForKeys:[NSArray arrayWithObject:NSURLIsExcludedFromBackupKey] error:nil]);
}
我在该文件夹中有一些与iCloud同步的文件。因此,与其将这些文件保存在另一个位置,我将
NSURLIsExcludedFromBackupKey
key 集的资源值设置为YES
,以排除那些文件不被iCloud备份,如下所示:NSURL *URL = [NSURL fileURLWithPath:photoPath];
[URL setResourceValue:@(YES) forKey:NSURLIsExcludedFromBackupKey error:nil];
我今天再次发送我的应用程序,以查看是否有效。
希望对您有所帮助。
关于ios - 由于2.23而导致iOS应用被拒绝-iOS数据存储准则,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28795975/