本项目是一款面向商业场景的组件化 iOS 直播应用,聚焦于高可用、高扩展性的直播业务开发。项目采用高度组件化架构,基础组件与功能组件(如推拉流、即时通讯 IM、送礼物、送礼物面板等)均实现了解耦与复用,便于独立维护和快速扩展。
说明:Pods 目录下以
KD开头的组件为本应用专属开发的业务组件,满足直播业务的定制化需求。
- 组件化开发:所有核心功能均以独立组件形式实现,支持灵活组合与按需集成。
- CocoaPods 依赖管理:统一管理第三方库与自研组件,保障依赖一致性与集成效率。
- 直播间 Controller 分文件管理:针对直播间业务复杂,采用 extension(扩展)方式将 Controller 的不同业务逻辑分文件管理,极大提升了代码的可读性和可维护性。
- 代码风格:结构清晰,注重可读性和易维护性,便于团队协作和持续迭代。
Wonderful/Controllers/Live/直播相关控制器Wonderful/Views/Live/直播相关视图
- 推拉流
- 即时通讯(IM)
- 送礼物
- PK
- 连麦
- 红包
- 弹幕
- 动态
- 其他直播相关业务模块
Wonderful/主工程目录,包含控制器、模型、视图等Pods/第三方依赖库及自研组件(KD 开头为专属组件)WonderfulTests/单元测试WonderfulUITests/UI 测试
use_frameworks!
pod 'KDBasisComponents' #基础组件 pod 'KDIMComponent' #IM组件 pod 'KDPlayComponent' #播放组件 pod 'KDPushComponent' #推流组件 pod 'KDGiftComponent' #礼物展示组件 pod 'KDGiftPickerComponent' #礼物框组件 pod 'KDImageComponent' #webp加载
pod ... end
- Xcode 12 及以上
- iOS 11.0 及以上
- 克隆项目到本地
- 使用 Xcode 打开
Wonderful.xcworkspace - 选择目标设备并运行
本项目遵循各依赖库的开源协议,具体请参考各库的 LICENSE 文件。