iOS app内部生成描述文件(二)编辑描述文件

  上篇 我说了描述文件的本质。这篇很短,我贴一下关键的代码就好了。

  对描述文件的操作就是简单的NSDictionary的操作。

  我的描述文件是对APN进行设置的,需要对其他进行设置的可以参考。APN最多有5个参数,我这里写了3个。

  

 1   NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"kAPN" ofType:@"mobileconfig"];/*读取app内的文件*/
 2     NSMutableDictionary *data = [[NSMutableDictionary alloc] initWithContentsOfFile:plistPath];
 3     NSMutableDictionary * config = [data mutableCopy];
 4     
 5     /*    apns part    */
 6     NSMutableDictionary * apns = config[@"PayloadContent"][0][@"PayloadContent"][0][@"DefaultsData"][@"apns"][0];
 7     [apns setObject:APNModel.apnName  forKey:@"apn"];
 8     [apns setObject:APNModel.userName forKey:@"username"];
 9     [apns setObject:APNModel.passWord forKey:@"password"];
10     /*    UUID part    */
11     // 负载的 uuid 
12     NSString * uuid = config[@"PayloadContent"][0][@"PayloadUUID"];
13     uuid = [CUManager configUUID];
14     // 文件的 uuid 
15     NSString * fileuuid = config[@"PayloadUUID"];
16     fileuuid = APNModel.fileName;
17     
18     // file path 沙盒路径    
19     NSString *documentsDirectory =[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
20     NSString *filename = [ documentsDirectory stringByAppendingPathComponent:@"XXAPN.mobileconfig"];
21     
22     /*  打印一下 将要存进去的数据  */
23     NSMutableDictionary *data1 = [[NSMutableDictionary alloc] initWithContentsOfFile:filename];
24     NSLog(@"%@", data1);
25     
26     // write to file  写到沙盒里面
27     [config writeToFile:filename atomically:YES];    

我没有贴完整的代码  我希望需要的朋友自己Coding一下。这个项目的code真的很少,不到1000行。

  下一篇是比较重要的地方:建立本地server, 让Safari来下载沙盒里面的文件。(Safari可以直接打开.mobileconfig文件)

  

posted @ 2015-03-31 15:16  akforsure  阅读(1585)  评论(0编辑  收藏  举报