我想为iOS开发一个小部件。 情况是: - 应用程序打开并每秒计算一些“X”数据。 行为:
小工具和iOS应用程序是两个分开的世界?
谢谢
安德烈
答案 0 :(得分:1)
那么你想要做的就是将主应用程序中的计算数据传递给你的小部件。很简单,只需使用AppGroups和NSUserDefaults就可以与您的小部件共享您需要的数据,如下所示:
计算您的数据,然后将其保存到您应用中的NSUserDefaults,如下所示:
NSUserDefaults *shared = [[NSUserDefaults alloc] initWithSuiteName:@"group.yougroup"];
[shared setObject:object forKey:@"yourkey"];
[shared synchronize];
要从窗口小部件中的NSUserDefaults读取数据,请执行以下操作:
NSUserDefaults *shared = [[NSUserDefaults alloc] initWithSuiteName:@"group.yougroup"];
id value = [shared valueForKey:@"yourkey"];
您还需要在应用和窗口小部件中设置AppGroup才能访问相同的数据,请按照本指南执行此操作:http://tapadoo.com/2014/sharing-nsuserdefaults-between-your-app-and-a-today-extension-on-ios-8/