Livestream
The UIKit now supports live stream posts so you can create and watch live streams.
To enable live stream functionalities easily, we’ve provided
AmityUIKitLiveStream
, which is built on top of AmityUIKit and AmitySDK.The plugin provides:
LiveStreamBroadcastViewController
to create and broadcast live stream postsLiveStreamPlayerViewController
to watch live streams
The live stream plugin can be installed via Swift Package Manager with these steps:
- 1.In Xcode, select File > Swift Packages > Add Package Dependency.
- 2.
- 3.Select Up to Next Major, then click Next.
- 4.Select
AmityUIKitLiveStream, then
click Finish.
After successfully installing the plugin, you must override the live stream behaviors with these steps:
- 1.Create
AmityEventHandler
subclass, and override live stream functions.import UIKitimport AmityUIKitimport AmitySDKimport AmityUIKitLiveStreamclass CustomEventHandler: AmityEventHandler {override func createLiveStreamPost(from source: AmityViewController,targetId: String?,targetType: AmityPostTargetType,destinationToUnwindBackAfterFinish: UIViewController) {let broadcastVC =LiveStreamBroadcastViewController(client: AmityUIKitManager.client, targetId: targetId, targetType: targetType)broadcastVC.destinationToUnwindBackAfterFinish = destinationToUnwindBackAfterFinishbroadcastVC.modalPresentationStyle = .fullScreensource.present(broadcastVC, animated: true, completion: nil)}override func openLiveStreamPlayer(from source: AmityViewController, postId: String, streamId: String) {let playerVC = LiveStreamPlayerViewController(streamIdToWatch: streamId)source.present(playerVC, animated: true, completion: nil)}} - 2.Set the custom event handler for
AmityUIKit
.AmityUIKitManager.set(eventHandler: CustomEventHandler())
LiveStreamBroadcastViewController
requires these permissions: - 1.Camera Permission - to broadcast live stream video
- 2.Microphone Permission - to broadcast live stream audio
After
LiveStreamBroadcastViewController
is presented, it will prompt to ask permission automatically if needed. You must include these permission keys in your app’s Info.plist file: - 1.
NSCameraUsageDescription
- 2.
NSMicrophoneUsageDescription
Last modified 1mo ago