抖音SDK -开播接入说明
更新时间 2024-07-24 02:58:49
收藏
我的收藏一、前言
- 目前抖音SDK 提供三大产品能力,分别是直播能力,短视频能力,开播能力,此接入说明针对开播能力,接入说明的技术内容仅供开发者参考,若确定要进行接入请通过工单-技术咨询联系官方人员获取完整版技术文档方可顺利接入。
- 目前对外提供开播 SDK 接入能力双端(安卓&iOS)接入,接入方可在第三方应用及设备进行一键开播,直播间分发至抖音,获取抖音流量价值。
- 特别注意:SDK包您将通过技术支持获得,暂不会提供公开的SDK。
二、抖音 SDK -开播 iOS 技术文档
- 对外文档仅披露部分内容,具体详细内容可见正式版技术文档
1. 前置了解
1.1 集成了解
- 环境要求:iOS 9.0 及以上版本 XCode 12 及以上版本
1.2 申请必要接入物料
- 请通过工单-技术咨询联系官方人员,获取直播接入相关参数:host appid, clientKey 等等
2. SDK 初始化
2.1 启动任务
- 使用示例在AppDelegate启动入口,触发启动任务,并传入申请的 hostAppID
Objective-C
请参考:
Swift
请参考:
2.2能力注入
使用示例
Objective-C
请参考:
- 自定义一个服务实现类,xxxIMP,并遵循`DYLiveAppInfoService`协议,实现协议方法
- 将该实现类xxxIMP,注入到SDK中该实现类会在网络请求公参时使用,需在网络请求触发前,注入到SDK中一般注入时机可选在AppDelegate的didFinishLaunching中,如考虑启动卡顿问题,可稍加延迟几秒
Swift
请参考:
- 自定义一个服务实现类,xxxIMP,并遵循`DYLiveAppInfoService`协议,实现协议方法
- 将该实现类xxxIMP,注入到SDK中
##
3. 功能使用
3.1 抖音登录/登出
使用示例
- 抖音登录
Objective-C
请参考:
Swift
请参考:
- 抖音登录状态清除(账号登出时调用)
Objective-C
请参考:
Swift
请参考:
- 抖音是否登录(YES 表示已登录;NO 表示未登录)
Objective-C
请参考:
Swift
请参考:
3.2 获取用户头像&昵称
使用示例
Objective-C
请参考:
Swift
请参考:
3.3 开播/关播
使用示例
- 开播
Objective-C
请参考:
Swift
请参考:
- 关播
Objective-C
请参考:
Swift
请参考:
三、抖音 SDK -开播 Android 技术文档
- 对外文档仅披露部分内容,具体详细内容可见正式版技术文档
1. 集成开播 SDK
1.1 配置 repositories
- 在整个工程的build.gradle文件中添加 maven repositories
1.2 配置 dependencies
- 在主工程的build.gradle文件中添加开播SDK dependencies:
1.3 配置代码混淆
2. 开发阶段
2.1 进行开播 SDK 初始化
- 在使用直播开播SDK其它功能之前,需要先对开播SDK进行注册操作,在DouyinLiveApi.init方法中传入对应从抖开平台获取的 appId 、webcastAppId 、clientKey信息以及宿主APP版本号
2.2 获取授权状态
- 通过 DouyinLiveApi.isAuthorized 方法可以判断当前账号抖音授权状态
2.3 进行抖音账号授权
- 调用login方法进行跳抖音授权,通过callback可以接收授权成功或失败的回调,授 权成功之后,开播SDK会缓存授权信息,一直到授权过期或失效之前,无需再次进行抖音账号授权。可以通过 DouyinLiveApi.isAuthorized() 方法判断当前账号的授权状态。
2.4 获取头像昵称信息
- 通过 DouyinLiveApi.getAccountInfo 方法可以获取头像昵称信息,注意它是一个同步方法,避免阻塞UI需要放在子线程进行调用,针对接口返回异常情况需要区分未授权和其它异常情况,在未授权时需要主动调起抖音授权。
2.5 开始直播
- 调用开播直播接口 DouyinLiveApi.startBroadcast 成功之后,会返回推流地址和房间号信息,推流地址用于硬件推流,房间号在关闭直播接口使用。在开始直播前会对当前用户权限和开播状态进行校验,如果不满足任意一项条件,会回调开播失败并返回错误码,此时无法正常开播,通过错误码可以判断出相应的错误信息。
- 支持推流类型:平面直播(VLOG直播) -> 对应参数:LiveAngle.STANDARD or 不传参
- 360度全景直播 -> 对应参数:LiveAngle.ANGLE_360
- 180度直播 -> 对应参数:LiveAngle.ANGLE_180
- 可设置推流方式:app推流 -> 对应参数:CamType.APP ;机内推流 -> 对应参数:CamType.CAM不进行区分 -> 对应参数:可传空或不传参
2.6 关闭直播
- 通过开播接口返回的房间号OpenRoomId进行 直播关播,在房间号正确的情况下,关播接口几乎不会出现关播异常情况,需要注意的是开播SDK提供的接口都是同步请求网络,需要放在子线程进行调用,避免放在主线程会阻塞UI。
2.7 退出账号
- 在退出当前账号或者切换账号时,调用一次DouyinLiveApi.quitLogin()方法来清除直播SDK本地缓存的授权状态,以便于保持本地授权状态为账号最新授权状态。
文档评论
登录后可参与评论