私の英語のレベルはお詫び申し上げます。
APPHOSTとウィジェットの間でデータを共有するには、静的クラスの例のために、このようにそれをあなたのuserDefault
データを保存する必要があります。
class UserDefaultDataHelper: NSObject {
static func saveKeyToGroupApp(_ value: AnyObject?, withKey key:String) -> Void {
UserDefaults(suiteName: "group.com.test")!.set(value, forKey: key)
UserDefaults(suiteName: "group.com.test")!.synchronize()
}
//and to read values
static func loadKeyToGroupApp(_ key:String) -> AnyObject? {
if let loadedValue = UserDefaults(suiteName: "group.com.test")?.object(forKey: key){
return loadedValue as AnyObject?
}
return nil
}
}
して使用する:
let ledcontrollerdata = UserDefaultDataHelper.loadKeyToGroupApp("ledControllers")
UserDefaultDataHelper.saveKey(yourData as AnyObject?, withKey: "ledControllers")
だけあなたを救いますこのようなデータでは、複数のアプリ、ウィジェットなどから同じデータを共有する必要がありますが、これらがバンドルIDグループのある「アプリグループ」にある場合に限ります。 group.com.test
にこのBundle IDグループを使用し、両方のプロジェクトがそれぞれの資格を持ち、Capabilities - > AppGroupsでターゲットを構成し、AppGroupDomainを選択する必要があります。
はい、この方法で私のために働きましたが、開発者アカウントのApp Groupsを設定するのはかなり必要でした。 –