我可以在 Apple Watch 和今天的扩展中使用相同的应用程序组吗?
Can i used same app group in apple watch and today extension?
我曾使用应用程序组与我的 Apple Watch 共享数据,今天还使用了我的应用程序的扩展程序。问题是我可以在今天的扩展中获取该应用程序组数据,但我无法在 Apple Watch 中获取此数据。所以我只想确保我可以使用应用程序组在今天的扩展程序甚至 Apple Watch 中访问它,哪种是与 Apple Watch 共享数据的最佳方式?
我用它来与应用组分享数据
NSUserDefaults *sharedDefaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.myapp.data"];
[sharedDefaults setObject:[[NSUserDefaults standardUserDefaults]objectForKey:@"array1"] forKey:@"arrayVisibleCountryList"];
[sharedDefaults setObject:[[NSUserDefaults standardUserDefaults]objectForKey:@"array2"] forKey:@"arrayBaseCurrency"];
[sharedDefaults synchronize];
从应用组中检索数据
NSUserDefaults *sharedDefaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.myapp.data"];
NSMutableArray *array1=[[sharedDefaults objectForKey:@"array1"]mutableCopy];
NSMutableArray *array2=[[sharedDefaults objectForKey:@"array2"]mutableCopy];
这只适用于 watchOS 1,当 phone 上的手表扩展 运行 时,并且可以访问 phone 的应用程序组容器。
在 watchOS 2 或更高版本中,无法使用应用组在 phone 和手表之间共享数据。您需要使用 Watch Connectivity
在 phone 和手表之间传输 运行 数据。
我曾使用应用程序组与我的 Apple Watch 共享数据,今天还使用了我的应用程序的扩展程序。问题是我可以在今天的扩展中获取该应用程序组数据,但我无法在 Apple Watch 中获取此数据。所以我只想确保我可以使用应用程序组在今天的扩展程序甚至 Apple Watch 中访问它,哪种是与 Apple Watch 共享数据的最佳方式?
我用它来与应用组分享数据
NSUserDefaults *sharedDefaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.myapp.data"];
[sharedDefaults setObject:[[NSUserDefaults standardUserDefaults]objectForKey:@"array1"] forKey:@"arrayVisibleCountryList"];
[sharedDefaults setObject:[[NSUserDefaults standardUserDefaults]objectForKey:@"array2"] forKey:@"arrayBaseCurrency"];
[sharedDefaults synchronize];
从应用组中检索数据
NSUserDefaults *sharedDefaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.myapp.data"];
NSMutableArray *array1=[[sharedDefaults objectForKey:@"array1"]mutableCopy];
NSMutableArray *array2=[[sharedDefaults objectForKey:@"array2"]mutableCopy];
这只适用于 watchOS 1,当 phone 上的手表扩展 运行 时,并且可以访问 phone 的应用程序组容器。
在 watchOS 2 或更高版本中,无法使用应用组在 phone 和手表之间共享数据。您需要使用 Watch Connectivity
在 phone 和手表之间传输 运行 数据。