iOS小组件与主项目之间数据传递

 Widget小组件与主项目使用App Groups进行数据传递,通过网络传递数据应该也是可行的,这里说一下App Groups的方式

第一步:配置App Groups

选择App Groups
勾选App Groups

小组件也需要添加App Groups并勾选,Xcode自动生成配置文件的话需要注意bundleId不能为*通配符,不然会报错生成失败

第二步:使用代码

App Groups可以共享文件和UserDefault

【NSUserDefaults 代码】

NSUserDefaults  *userDefualt =  [[NSUserDefaults alloc] initWithSuiteName:YourAPPGroupID];

【共享文件路径代码】

NSURL *groupURL = [[NSFileManager defaultManager] containerURLForSecurityApplicationGroupIdentifier:YourAPPGroupID];

【小组件中获取】

let userDefault = UserDefaults(suiteName:"YourAPPGroupID")

let groupURL = FileManager.default.containerURL(forSecurityApplicationGroupIdentifier:"YourAPPGroupID")

你可能感兴趣的:(iOS小组件与主项目之间数据传递)