无法在app和今天的扩展程序之间共享数据

时间:2014-11-11 10:46:58

标签: ios iphone ios8 ios8-extension today-extension

我正在开发待办事项列表应用。在这个应用程序中,我添加今天的扩展名。它用于显示今天的待办事项列表。

这是应用和今天扩展之间共享数据的代码。出于测试目的,我在NSUserDefaults中添加了唯一一个项目。

用于将数据保存到NSUserDefaults的应用程序代码。

NSUserDefaults *shared = [[NSUserDefaults alloc]initWithSuiteName:@"group.compname.appname"];

[shared setValue:@"Test" forKey:@"test"];

[shared synchronize];

今天用于从NSUserDefaults

获取数据的扩展代码
NSUserDefaults *shared = [[NSUserDefaults alloc]initWithSuiteName:@"group.compname.appname"];

NSString *str =  [ shared valueForKey:@"test"] ;

NSLog(@" Text = %@", str);

我总是得到' null'值。

1 个答案:

答案 0 :(得分:1)

听起来您还没有将组添加到权利/功能中。

从此网站:http://www.shinobicontrols.com/blog/posts/2014/07/21/ios8-day-by-day-day-2-sharing-extension

  1. 转到应用目标的功能标签
  2. 启用应用组
  3. 创建一个名为适当的新应用组。它必须以group开头..在演示中,该组称为group.ShareAlike
  4. 让Xcode为您完成创建此群组的过程。