SwiftUIRtc_macOS 0.5.0

SwiftUIRtc_macOS 0.5.0

Max Cobb维护。



  • Max Cobb

SwiftUIRtc

SwiftUIRtc 是一个用于使用 Agora RTC SDK 和 SwiftUI 构建视频通话应用程序的包。它提供了一系列 SwiftUI 视图和类,简化了设置和管理 Agora RTC 会话以进行视频通话的工作。

这不是 Agora 的官方产品,它仅仅是一个开源项目,旨在帮助开发者用新的方法(如使用 SwiftUI)使用 RTC 引擎。如果您在这个存储库中的类有问题,请打开一个问题或一个 PR。Agora 的支持团队可能不会了解这个包。

查看 SwiftUIRtc 文档

需求

安装

您可以使用 Xcode 中的 Swift 包管理器安装 SwiftUIRtc。只需将包添加到您的项目中,方法是转到文件 > Swift 包 > 添加包依赖项,并输入仓库 URL。

https://github.com/AgoraIO-Community/SwiftUIRtc.git

使用

要将 SwiftUIRtc 集成到您的 SwiftUI 项目中,只需导入该包并使用提供的视图和类。例如,您可以使用 AgoraVideoCanvasViewAgoraManager 视图来渲染 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