【发布时间】:2014-08-14 18:55:50
【问题描述】:
我想知道我们是否可以使用新的 iOS 8 功能在应用程序之间共享数据:应用程序组(使用 NSUserDefaults) - 或者应用程序组是否仅在主应用程序及其扩展程序之间共享数据?
我实际上在应该在它们之间共享数据的两个应用程序上启用了应用程序组功能(它们属于同一家公司)。它们也有相同的应用程序组(如 group.com.company.myApp)。
这是第一个的代码(在 Swift 中)
NSUserDefaults.standardUserDefaults().setBool(true, forKey:"Bool")
NSUserDefaults.standardUserDefaults().synchronize()
这是第二个的代码(在 Objective-C 中)
NSUserDefaults *datas = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.company.myApp"];
NSLog(@"%@", [datas boolForKey:@"Bool"]);
遗憾的是,Bool 总是返回 nil。
如果有人有解决方案:)
谢谢
【问题讨论】:
-
大家好 - 如果您要投反对票,请说明原因。谢谢
-
iOS 8 处于保密协议下,所以我们不能在这里谈论它。请改用 Apple 开发者论坛。
-
@NealEhardt:“对于 Apple 在 WWDC(Apple 全球开发者大会)上披露的有关预发布 Apple 软件和服务的技术信息,您将不受上述保密条款的约束,除非您不得发布屏幕截图、撰写公开评论或重新分发任何预发布的 Apple 软件或服务”
-
您是否尝试过使用 initWithSuiteName 初始化您的第一个用户默认值?我不相信他们是同一组。另外,您确定您的组 ID 正确吗?我认为它不应该有应用程序的个人名称。
-
@bjtitus 感谢您的纠正。我认为 iOS 7 或更早版本并非如此。
标签: ios objective-c swift ios8 ios-app-group