首页 > 代码库 > Today Extension and add group
Today Extension and add group
1 建立一个新的 target app 类型选择today Extension http://blog.csdn.net/wjsxiaoweige/article/details/39524291phone Extension的建立
3 run 工程,看看我们的today Extension app效果,记得选择Today 这样才能直接看到效果
4 是不是很简单,但是这样展示的数据只能是固定的,我们需要的我们应用的实际数据,而不是毫无意义的数据,那么怎么和我们的应用联系到一起,这个就需要用到add group了
add group 是apple 提供的一种安全的数据共享方式
首先选择我们需要共享的应用,创建app groups
6 下面 我们讲告诉你,如何把应用的数据,共享出去,我们用得是 NSUserDefaults 方法 代码如下
注意 是alloc方法,shareinstance是不能用的。
2 构建 today Extension app的sb 很简单,如果你的UI很复杂,这个就不管了
3 run 工程,看看我们的today Extension app效果,记得选择Today 这样才能直接看到效果
4 是不是很简单,但是这样展示的数据只能是固定的,我们需要的我们应用的实际数据,而不是毫无意义的数据,那么怎么和我们的应用联系到一起,这个就需要用到add group了
add group 是apple 提供的一种安全的数据共享方式
首先选择我们需要共享的应用,创建app groups
打开app group的按钮,这中间需要我们正确的配置appid 才能够上线,所以如果只是自己学习的话,忽略下面的红色感叹号吧
5 点击+号 创建一个Add a new container 填写名字 group.TodayDataExtensionDefaults ok完成。 同样的方法,在today extension app创建一个同样的new container
完成上面两步,你就会看到第一步entitlements这个东东了,这就是你要共享数据的容器。
6 下面 我们讲告诉你,如何把应用的数据,共享出去,我们用得是 NSUserDefaults 方法 代码如下
NSUserDefaults * shareDefaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.TodayDataExtensionDefaults"]; [shareDefaults setObject:@"this is the test1111" forKey:@"test"]; [shareDefaults synchronize];
注意 是alloc方法,shareinstance是不能用的。
7 在TodayViewController中添加如下方法来监听usetdefault的变化
- (instancetype)initWithCoder:(NSCoder *)coder { self = [super initWithCoder:coder]; if (self) { [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(userDefaultChaneg:) name:NSUserDefaultsDidChangeNotification object:nil]; } return self; }
8 在通知方法里改变today 控件的值
- (void)userDefaultChaneg:(id)sener { NSUserDefaults * defaultes = [[NSUserDefaults alloc] initWithSuiteName:@"group.TodayDataExtensionDefaults"]; NSString * string = [defaultes valueForKey:@"test"]; NSLog(@"string = %@",string); self.myLable.text = string; }
其它知识 我们可以创建一个快速打开我们应用的按钮
NSURL * url = [NSURL URLWithString:@"readbook://a=1"]; [self.extensionContext openURL:url completionHandler:^(BOOL success) { }];
Today Extension and add group
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。