broadCast 梳理
一 broadcast在主工程中使用
1 注册app Group, 生成 groupId
2 主工程 bundleid 绑定 app group
3 主项目创建 broadcast,并发送数据,发送数据使用 NSUserDefaults
- 3.1 broadcast 的 bundleId 即为broadcastId
- 3.2 创建的broadcast 传递数据需要使用 groupId, self.dataDefaults = [[NSUserDefaults alloc]initWithSuiteName:VCFGroupId];
4 主工程接收broadcast发送的数据
- 4.1 使用ReplyKit中的RPSystemBroadcastPickerView吊起系统录屏弹窗,其中 pickerV.preferredExtension = broadcastId;
- 4.2 需要使用groupId接收数据,[[NSUserDefaults alloc] initWithSuiteName:VCFGroupId], 并使用KVO监听UserDefaults传来的新值
- 4.3 使用OpenUrlScheme, 使用场景:app在后台点击顶部红色横条直接突出直播,需要跳转回app
二 broadcast 在framework中封装给主工程使用
1 注册app Group, 生成 groupId
2 主工程 bundleid 绑定 app group
3 framework中创建broadcast,并发送数据,发送数据使用 NSUserDefaults
- 3.1 broadcast 的 bundleId 即为broadcastId
- 3.2 创建的broadcast 传递数据需要使用 groupId, self.dataDefaults = [[NSUserDefaults alloc]initWithSuiteName:VCFGroupId];
4 framework编译后,主工程导入Broadcast.appex 并拖拽到 targets->Gengral->Frameworks,Libraries,andEmbeddedContent 目录下
5 主工程接收broadcast发送的数据
- 5.1 使用ReplyKit中的RPSystemBroadcastPickerView吊起系统录屏弹窗,其中 pickerV.preferredExtension = broadcastId;
- 5.2 需要使用groupId接收数据,[[NSUserDefaults alloc] initWithSuiteName:VCFGroupId], 并使用KVO监听UserDefaults传来的新值
- 5.3 使用OpenUrlScheme, 使用场景:app在后台点击顶部红色横条直接突出直播,需要跳转回app
网友评论