推流SDK需要SDK License授权才可以正常推流。本文为您介绍推流SDK License的获取以及集成方式。
注意事项
一体化License可为同一个阿里云账号下的所有APP提供视频云SDK的接入授权。目前推流SDK已接入一体化License服务。
当您同时申请视频直播推流SDK License和视频云一体化License其他服务时(例如美颜特效SDK License),LicenseKey和LicenseFile(证书文件)是相同的,只需配置一次即可(注意证书文件需使用最新的一份)。
说明如果您之前仅申请了视频云一体化License服务中的其他License(例如美颜特效SDK License),后续使用推流SDK时,可以将您需要的SDK权限(即应用信息)发送申请至创建应用并绑定License,订正License的授权范围。否则,推流SDK会校验失败。
仅订正License的授权范围,LicenseKey和LicenseFile不变,您不需要重新配置License,但在使用推流功能前必须注册推流SDK。
申请License授权
视频直播服务提供直播推流SDK、美颜特效SDK、播放器SDK的License统一授权管理,您可以在视频直播控制台创建应用并绑定License授权,授权成功后,您可以获取到License和License Key文件。具体操作,请参见我的授权。
配置License
在视频直播控制台创建应用并绑定License授权成功后,可以获取到License和License Key文件。您需要按照以下操作配置License。
Android端配置License
(推荐)将License文件复制到Android Studio项目中的assets目录下。
说明您也可以将License文件复制到其他位置,但须确保步骤2中
com.aliyun.alivc_license.licensefile
对应的value值和License文件的路径一致。在AndroidManifest.xml文件中添加<meta-data>节点。
重要若配置License后校验失败,您可以检查<meta-data>节点是否处于<application>元素下面,且<meta-data>的name是否正确。
<meta-data android:name="com.aliyun.alivc_license.licensekey" android:value="foIVziMaUHaRqgDyhf6b6eb8fcf014af39535d0720a32****"/> <!-- TODO:请设置您的 LicenseKey值--> <meta-data android:name="com.aliyun.alivc_license.licensefile" android:value="assets/cert/release.crt"/> <!-- TODO:请设置您的 LicenseFile文件路径-->
iOS端配置License
将License文件复制到Xcode项目中指定目录,并在Target Membership中选中当前项目。
打开Info.plist,分别修改AlivcLicenseKey和AlivcLicenseFile为申请License时获取的License Key和License文件路径。
注册推流SDK
在使用推流功能之前,必须先进行注册,否则将无法使用推流SDK功能。在注册SDK之前,需要先完成License配置操作。
Android端注册SDK
请在较早的位置(使用推流SDK前)调用注册License接口
AlivcLiveBase.setListener(new AlivcLiveBaseListener() {
@Override
public void onLicenceCheck(AlivcLivePushConstants.AlivcLiveLicenseCheckResultCode result, String reason) {
Log.e(TAG, "onLicenceCheck: " + result + ", " + reason);
}
});
AlivcLiveBase.registerSDK();
通过AlivcLiveBase类,可以设置日志级别、设置本地日志路径、获取SDK版本等。
接入方需要调用AlivcLiveBase中的registerSDK方法,进行SDK License注册。
在AlivcLiveBase#setListener接口的onLicenceCheck方法,异步判断License是否配置成功。
该回调仅在初始化pusher实例后触发。
iOS端注册SDK
请在较早的位置(使用推流SDK前)调用注册License接口
[AlivcLiveBase registerSDK];
通过AlivcLiveBase类,可以设置日志级别、设置本地日志路径、获取SDK版本等。
在AlivcLiveBase#setObserver接口的onLicenceCheck方法,异步判断Licence是否配置成功。