Skip to content
This repository has been archived by the owner on Nov 5, 2024. It is now read-only.

Latest commit

 

History

History
138 lines (94 loc) · 6.56 KB

README.md

File metadata and controls

138 lines (94 loc) · 6.56 KB

[ARCHIVED] Agora Video UI Kit for iOS

⚠️ This project is no longer maintained and has been archived.
Please note that this repository is now in a read-only state and will not receive any further updates or support. We recommend migrating to the following alternatives:

  • Agora SDK: For developers seeking a customizable solution with full control over the user experience. Learn more
  • Agora App Builder: For those preferring a no-code approach to integrate real-time engagement features. Get started

For documentation and support, please visit the Agora Documentation.


Instantly integrate Agora in your own application or prototype using iOS. For macOS, see VideoUIKit-macOS.

More information available on this repo's Wiki

Click here for full documentation

To see full documentation for other packages in this repo, such as AgoraBroadcastExtensionHelper, AgoraAppGroupDataHelper or AgoraRtmControl, check them out here:

Requirements

Once you have an Agora developer account and an App ID, you're ready to use this package.

Installation

Swift Package Manager and CocoaPods are both available offered for installation methods.

The Pod for this package is called AgoraUIKit_iOS and AgoraUIKit_macOS for the two available platforms.

See the Installation wiki page for more information on installing the package.

Usage

Once installed, open your application .xcodeproj file. Or .xcworkspace if using CocoaPods.

The main view for Agora UIKit is AgoraVideoViewer. This is an example of a minimal creation that gives you a view similar to the one at the top of this README:

import AgoraRtcKit
import AgoraUIKit

let agoraView = AgoraVideoViewer(
    connectionData: AgoraConnectionData(
        appId: "<#my-app-id#>",
        rtcToken: "<#my-channel-token#>",
        rtmToken: "<#my-channel-rtm-token#>"
    ), delegate: self
)

Frame your newly created AgoraVideoViewer in the app scene, then join a channel by calling:

agoraView.join(channel: "test", as: .broadcaster)

More examples available on the wiki

Screen Sharing

For an example for screen sharing with Agora Video UI Kit and AgoraBroadcastExtensionHelper Quickstart, check out the example project here:

https://github.com/AgoraIO-Community/Video-UI-Kit-ScreenShare

Documentation

For full documentation, see our AgoraUIKit documentation page.

For other libraries in this package:

Error Handling and Troubleshooting

For tips on how to overcome some common errors, see the wiki page.

Roadmap

UIKits

The plan is to grow this library and have similar offerings across all supported platforms. There are already similar libraries for Android, React Native, Flutter and Web React so be sure to check them out.

UML Diagrams

  • AgoraUIKit

UML of AgoraUIKit

  • AgoraRtmControl

UML of AgoraRtmControl

generated with swiftplantuml classdiagram Sources