SwiftUIRtc 是一个使用 Agora RTC SDK 和 SwiftUI 构建视频通话应用的软件包。它提供了一组 SwiftUI 视图和类,简化了为视频通话设置和管理 Agora RTC 会话的过程。
这不是 Agora 的官方产品,它只是一个开源项目,旨在帮助开发者以新的方式(例如使用 SwiftUI)使用 RTC 引擎。如果您在使用此仓库中的类时遇到任何问题,请提交 issue 或 PR。Agora 的支持团队可能不了解此软件包。
请参阅 SwiftUIRtc 文档。
SwiftUIRtc 可以使用 Xcode 中的 Swift Package Manager 进行安装。只需导航到 File > Swift Packages > Add Package Dependency 并输入仓库 URL,即可将该软件包添加到您的项目中
https://github.com/AgoraIO-Community/SwiftUIRtc.git
要在您的 SwiftUI 项目中使用 SwiftUIRtc,只需导入该软件包并使用提供的视图和类。例如,您可以使用 AgoraVideoCanvasView
和 AgoraManager
视图来渲染 Agora RTC 会话中的所有视频流
import SwiftUIRtc
import AgoraRtcKit
struct AgoraGettingStartedView: View {
@ObservedObject var agoraManager = AgoraManager(appId: <#AppId#>, role: .broadcaster)
var channelId: String = "test"
var body: some View {
ScrollView {
VStack {
ForEach(Array(agoraManager.allUsers), id: \.self) { uid in
AgoraVideoCanvasView(manager: agoraManager, canvasId: .userId(uid))
.aspectRatio(contentMode: .fit).cornerRadius(10)
}
}.padding(20)
}.onAppear {
agoraManager.agoraEngine.joinChannel(
byToken: <#Agora Temp Token#>, channelId: channelId, info: nil, uid: 0
)
}.onDisappear {
agoraManager.agoraEngine.leaveChannel()
}
}
}
欢迎为 SwiftUIRtc 做出贡献!如果您遇到任何问题或有功能请求,请在 GitHub 仓库上提交 issue。也欢迎提交 Pull Request。
SwiftUIRtc 基于 MIT 许可证发布。有关更多信息,请参阅 LICENSE 文件。
SwiftUIRtc 依赖于 Agora.io 开发的 AgoraRtcKit 框架,以实现实时通信功能。