假设我有以下应用标识 com.test.product1 , product1提供组ID group.com.test.product1。
我应该将文件分享到另一个产品 com.test.product2 ,它是product2提供的groupid group.com.test.product2。
如何分享一个共同的群体,例如 group.com.test.product 所有这些应用程序之间?
答案 0 :(得分:5)
您可以使用App Groups存储共享数据,但我只尝试使用内置类型执行此操作。
如果你试图存储自己的类,你可能需要查看类似NSKeyedArchiver和NSCoding(可能看起来here)。
如果您可以找到使用内置类型的方法,可以按如下方式使用App Groups:
在多个应用之间共享NSUserDefaults数据
要在应用和分机之间或2个应用之间共享默认值,您必须使用以下步骤在设置中添加应用组:
注意:如果您访问Apple Developer Portal(显示所有证书,标识符,设备和配置文件的Apple网站)并转到标识符>应用程序组您应该看到这个新的应用程序组。
存储数据:
var userDefaults = NSUserDefaults(suiteName: "group.com.company.myApp")
userDefaults!.setObject("user12345", forKey: "userId")
userDefaults!.synchronize()
要检索数据:
var userDefaults = NSUserDefaults(suiteName: "group.com.company.myApp")
if let testUserId = userDefaults?.objectForKey("userId") as? String {
print("User Id: \(testUserId)")
}
答案 1 :(得分:0)
应用程序组旨在共享一个捆绑包,该捆绑包可以被应用程序及其扩展程序用作共享容器,您可以在其中存储共享数据: