百度地图无法通过审核

来源:互联网 发布:网络推广无限营销 编辑:程序博客网 时间:2024/05/05 13:14
因为在项目使用百度地图的时候会在Document里生成cfg文件,大小大概800k,随着百度地图sdk的运行似乎还会增加大小。
   就是因为这个cfg,AppStore拒绝了我的应用。理由是2.23(很长的一段英文,大意就是嫌放在iCloud里的非用户文件太大)。我的文件明明是放在Document里的怎么就冒出了一个iCloud?其实ios默认情况下,放在Document的文件是会被上传到iCloud里进行备份的!!
  因为百度地图的cfg文件是放在Document里的,所以我们得把默认上传Document文件到iCloud里的属性关闭。
具体代码如下:
开始前,记住要导入一个东西

[代码]c#/cpp/oc代码:

1#include <sys/xattr.h>//导入该框架用于防止相应文件的云储存iCloud
实现代码

[代码]c#/cpp/oc代码:

01//关闭iCloud的方法,直接拷贝就能用
02- (void)addSkipBackupAttributeToPath:(NSString*)path {
03    u_int8_t b = 1;
04    setxattr([path fileSystemRepresentation], "com.apple.MobileBackup", &b, 1, 0, 0);
05}
06 
07- (void)viewDidLoad
08{
09    [super viewDidLoad];
10    //为Document文件设置不iCloud存储属性,防止AppStore审核无法通过2.23条款
11    NSString *notBackUpPathDoc = nil;
12    notBackUpPathDoc = [NSString stringWithFormat:@"%@/Documents/",NSHomeDirectory()];
13    [self addSkipBackupAttributeToPath:notBackUpPathDoc];
14     
15    NSString *notBackUpPathCach = nil;
16    notBackUpPathCach = [NSString stringWithFormat:@"%@/Library/Caches/",NSHomeDirectory()];
17    [self addSkipBackupAttributeToPath:notBackUpPathCach];
18 
19 
20}
ok,这个方法和官方提供的方法不太一样,不过挺奏效的。
0 0