* Available for iOS 7
* Group path is different in iOS 7 and 8
ios7:file:///private/var/mobile/Containers/Shared/AppGroup/xxx
ios8:file:///private/var/mobile/Containers/xxx
* Userdeafults can't share in iOS7, but it won't raise any error.
* Enable App Groups will add *.entitlements in proj
* Delete all app relate to the App Groups, system will delete the dir in AppGroup either, next time install the app will use another UUID
- (IBAction)doSet:(id)sender{
NSUserDefaults *def = [[NSUserDefaults alloc] initWithSuiteName:@"group.myappgroup"];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSString *s = [dateFormatter stringFromDate:[NSDate date]];
NSLog(@"set value:%@",s);
[def setValue:s forKey:@"dt"];
[def synchronize];
}
- (IBAction)doGet:(id)sender{
NSUserDefaults *def = [[NSUserDefaults alloc] initWithSuiteName:@"group.myappgroup"];
NSLog(@"%@", [def valueForKey:@"dt"]);
self.title = [def valueForKey:@"dt"];
}
- (IBAction)doWrite:(id)sender{
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSString *s = [dateFormatter stringFromDate:[NSDate date]];
NSURL *url = [[NSFileManager defaultManager] containerURLForSecurityApplicationGroupIdentifier:@"group.myappgroup"];
url = [url URLByAppendingPathComponent:@"a.dat"];
NSLog(@"%@",url.absoluteString);
NSError *err = NULL;
[s writeToURL:url atomically:YES encoding:NSUTF8StringEncoding error:&err];
if(err){
NSLog(@"err:%@",err.description);
}
}
- (IBAction)doReadFile:(id)sender{
NSURL *url = [[NSFileManager defaultManager] containerURLForSecurityApplicationGroupIdentifier:@"group.myappgroup"];
url = [url URLByAppendingPathComponent:@"a.dat"];
NSLog(@"%@",url.absoluteString);
NSError *err = NULL;
NSString *s = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:&err];
if(!err){
NSLog(@"%@",s);
self.title = s;
}else{
NSLog(@"err:%@",err.description);
}
}