全部产品
Search
文档中心

音视频终端SDK:接入License

更新时间:Nov 11, 2024

音视频终端SDK License通过与应用标识一一绑定,以实现对该应用调用SDK进行授权。获取SDK License后,需要在对应的直播推流SDK、短视频SDK、播放器SDK、美颜特效SDK中接入License以完成SDK的授权流程。通过阅读本文,您可以了解如何在Web、Android和iOS端接入License。

前提条件

已申请License,并获取License文件和License Key。具体操作,请参见申请License

鉴权流程

image

如上图所示,音视频终端SDK的License鉴权流程依赖LicenseKey与License文件,配置要求如下:

项目

是否必须

说明

LicenseKey

用于请求更新License文件。

SDK初始化时会检查更新证书文件,在程序运行时也会每隔15分钟检查更新证书文件。

License文件

否,建议配置

用于当未能从服务端成功请求到证书时鉴权使用的证书文件,例如由于网络问题导致无法下载证书等极端场景。

证书文件内容包含了开通的权限以及有效期。因此,为了在弱网络环境下提高鉴权通过率,建议在权限发生变化时主动更新内置证书文件。

说明
  1. 权限发生变化一般指新开通业务、新开通增值服务、续费等。

  2. Web端不需要配置License文件

如有特殊原因不希望内置License文件时,不填写LicenseFile相关配置即可(具体参考下文)。

说明

不配置内置证书文件意味着鉴权依据全部来源于服务端,这样可能会因为网络不稳定而导致鉴权不稳定;也可能导致用户首次使用应用需要等待证书下载完成才能通过鉴权(耗时取决于用户当时的网络情况)。

播放器SDK服务环境

为了满足全球化合规要求,阿里云播放器SDK(6.14.0及以上版本)为您提供了多样化的环境选择,确保服务的本地化和合规性。根据您所选择的服务环境,播放器SDK的License鉴权以及播放器SDK所涉及的播放质量服务数据将由相应的服务中心提供支持。您可以根据自己的需求选择以下服务环境。

请注意,目前阿里云国际站用户仅支持使用国际站环境(新加坡节点),您所使用的播放器SDK(6.14.0及以上)默认设置为全球环境配置。为了确保License鉴权流程的顺利进行,您需要按照以下步骤将播放器SDK配置更新为国际站环境。

环境

说明

使用建议

全球环境(默认)

通过阿里云中国上海节点提供服务,确保全球用户的接入和授权需求得到满足。

适用于中国内地业务。

说明

目前阿里云国际站用户仅支持使用国际站环境(新加坡节点),如需使用全球环境(中国上海节点),请联系我们获取技术支持。

国际站环境

专为国际站用户设计,通过新加坡节点提供服务,以满足特定区域的合规性和性能要求。

适用于中国香港、中国澳门、中国台湾及海外业务。

Web端接入License

  1. 从控制台获取License Key。image

  2. 在初始化播放器时传入license字段,包含注册的域名和License Key:

    var player = new Aliplayer({
      license: {
        domain: "example.com", // 申请 License 时填写的域名
        key: "example-key" // 申请成功后,在控制台可以看到 License Key
      }
    });
  3. 初始化播放器后,如果没有相关错误提示,则表示License配置成功。

    说明

    请确保播放器所在页面的域名和申请License时填写的域名保持一致,或者是填写域名的子域名,否则 License校验将会不通过(localhost 不会校验)。

Android端接入License

  1. 配置License。

    1. (推荐)将证书文件拷贝到Android Studio项目中的assets目录下。

      说明

      您也可以将证书文件复制到设备中的其他位置,但要保证下一步中com.aliyun.alivc_license.licensefile(全球环境)或com.aliyun.alivc_license.licensefile_SEA(国际站环境)对应的value的值和License的路径保持一致。

    2. 在AndroidManifest.xml文件中添加<meta-data>节点。

      重要
      • 若配置License后校验失败,您可以检查<meta-data>节点是否处于<application>元素下面,且<meta-data>的name是否正确。若未能解决问题,您可以参考License相关常见问题进行排查。

      • 针对国际站用户,若需使用播放器SDK,且播放器SDK为6.14.0及以上版本,请务必配置国际站环境License;若不使用播放器SDK,可以仅配置全球环境License。

      • 您可以同时接入2套License(1套全球环境License,1套国际站环境License),后续在App每次启动后,通过配置播放器SDK的服务环境,来指定播放器的运行环境。播放器运行过程中,不支持切换环境。

      License配置-android-EN3.png

      // 全球环境配置License(默认配置)
      <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文件路径-->
      
      
      // 国际站环境配置License,手动在末尾添加_SEA
      <meta-data
          android:name="com.aliyun.alivc_license.licensekey_SEA"
          android:value="f6b6foIVziMaUHaRqgDyheb8fcf014af39535d0a32720****"/>  <!-- TODO:请设置您的 LicenseKey值-->
      <meta-data
          android:name="com.aliyun.alivc_license.licensefile_SEA"
          android:value="assets/cert/release.crt"/>  <!-- TODO:请设置您的 LicenseFile文件路径-->
  2. 配置播放器SDK的服务环境(使用国际站环境必配)。

    播放器SDK自6.14.0版本开始支持选择服务环境,6.14.0及以上版本的播放器SDK默认为全球环境配置,如需使用国际站环境(目前国际站用户仅支持使用国际站环境),则须在每次App启动后,按照下述方法将播放器SDK配置更新为国际站环境,否则播放器SDK的License会鉴权失败;其他版本及SDK的使用场景下,可忽略此步骤。

    // 使用国际站环境时,请确保在调用任何播放器API之前,已调用下述接口更新默认配置为国际站环境,以确保后续所有业务都是在国际站环境下运行
    // 通过AlivcBase统一接口,设置国际站环境,运行期间不支持修改
    AlivcBase.getEnvironmentManager().setGlobalEnvironment(AlivcEnv.GlobalEnv.ENV_SEA);

iOS端接入License

  1. 配置License。

    1. 将License文件复制到Xcode项目中指定目录,并在Target Membership中选中当前项目。

      image.png

    2. 打开Info.plist,分别修改AlivcLicenseKeyAlivcLicenseFile(全球环境)或AlivcLicenseKey_SEAAlivcLicenseFile_SEA(国际站环境)为申请License时获取的License Key和License文件路径。

      重要
      • 针对国际站用户,若需使用播放器SDK,且播放器SDK为6.14.0及以上版本,请务必配置国际站环境License;若不使用播放器SDK,可以仅配置全球环境License。

      • 您可以同时接入2套License(1套全球环境License,1套国际站环境License),后续在每次App启动后,通过配置播放器的服务环境,来指定播放器的运行环境。播放器运行过程中,不支持切换环境。

      //全球环境License配置(默认配置)
      <key>AlivcLicenseFile</key>
      <string>XXX</string>
      <key>AlivcLicenseKey</key>
      <string>foIVziMaUHaRqgDyhf6b6eb8fcf014af39535d0720a32****</string>
      
      
      // 国际站环境License配置,手动在末尾添加_SEA
      <key>AlivcLicenseFile_SEA</key>
      <string>XXX</string>
      <key>AlivcLicenseKey_SEA</key>
      <string>f6b6efoIVziMaUHaRqgDyhb8fcf014af39535d0a32072****</string>

  2. 配置播放器SDK的服务环境。

    播放器SDK自6.14.0版本开始支持选择服务环境,6.14.0及以上版本的播放器SDK默认为全球环境配置。如需使用国际站环境(目前国际站用户仅支持使用国际站环境),则须在每次App启动后,按照下述方法将播放器SDK配置更新为国际站环境,否则播放器SDK的License会鉴权失败;其他版本及SDK的使用场景下,可忽略此步骤。

    // 使用国际站环境时,请确保在调用任何播放器API之前,已调用下述接口更新默认配置为国际站环境,以确保后续所有业务都是在国际站环境下运行
    // 通过AlivcBase统一接口,设置国际站环境,运行期间不支持修改
    AlivcBase.EnvironmentManager.globalEnvironment = ENV_SEA;