本文为您介绍iOS短视频SDK的pod集成和手动配置操作。

前提条件

开发前的环境要求如下表所示。
类别说明
系统版本支持iOS 9.0及以上版本。
macOS High Sierra版本支持macOS High Sierra 10.13及以上版本。
Xcode版本支持Xcode 9.0及以上版本,下载Xcode

pod方式集成(推荐)

操作步骤

  1. 在Podfile文件中添加依赖。
    重要
    • 如果使用短视频SDK 3.24.0及以上版本,请务必使用FFmpeg 4.3.0及以上版本。
    • 请确保网络环境可以访问更新pod仓库,并在pod install安装完成后检查framework版本号是否和官网最新版一致。
    • 使用最少依赖集成方式集成短视频SDK时,如果需要上传媒资文件到视频点播,请集成上传SDK上传,具体内容请参见上传SDK
    • 默认集成(默认集成方式,包含资源包和上传SDK)
      # 默认的集成方式,除短视频SDK外,还会集成资源包和上传SDK。
      pod 'AliyunVideoSDKPro', '~> 6.0.0'
    • 最少依赖集成(不包含资源包和上传SDK)
      # 仅集成短视频SDK,不会集成资源包和上传SDK
      pod 'AliyunVideoSDKPro/min', '~> 6.0.0'
      说明 如需使用拍摄模块的人脸贴纸功能,则必须引入资源包(AliyunVideoSDKPro.bundle),引入方式请参见设置资源包引入路径
  2. 更新pod repo。
    pod repo update
  3. 安装pod。
    pod install

手动方式集成(不推荐)

库和资源依赖说明

说明 手动方式集成不提供上传库,如果需要上传媒资文件到视频点播,请集成上传SDK上传,具体内容请参见上传SDK
需要手动下载集成相应版本的以下库和bundle资源包。
库名描述下载地址
AliyunVideoSDKPro.framework动态库V6.0.0专业版
AliyunVideoSDKPro.bundle资源包(非必须)
说明 当需要使用拍摄模块的人脸贴纸功能时,则必须引入该资源包。
alivcffmpeg动态库GitHub下载地址

操作步骤

说明
  • 手动方式集成较为繁琐,并且提交到App Store时需要剥离模拟器版本(x86架构)的动态库,否则会被拒绝。因此推荐使用pod方式集成。剥离模拟器动态库的方式有如下两种:
    • 使用命令行工具lipo剥离模拟器架构的framework。
    • 通过pod方式集成,pod会在打包时自动剥离掉模拟器架构的framework。
  • 编译报错时,请修改Build Settings > Apple Clang - Language > Compile Sources As,修改为Objective-C++
  1. 添加动态库。
    单击General,选择Frameworks, Libraries, and Embedded Content。单击,然后单击Add Other…,导入上述动态库(例如AliyunVideoSDKPro.framework、alivcffmpeg.framework)。导入之后请选择Embed &Sign
  2. 添加其他库依赖。
    单击General,选择Frameworks, Libraries, and Embedded Content。单击,分别添加MobileCoreServices.framework、SystemConfiguration.framework和libresolv.tbd依赖。
  3. 可选:将AliyunVideoSDKPro.bundle依赖导入到工程。
    单击Build Phases,选择Copy Bundle Resources,单击,然后单击Add Other…,导入AliyunVideoSDKPro.bundle。

配置项目

SDK集成后,打开项目工程并修改以下配置:

  1. 配置Build Setting > Linking > Other Linker Flags ,添加-ObjC。
  2. 打开工程info.Plist,添加以下权限:
    Privacy - Camera Usage Description
    Privacy - Microphone Usage Description
    Privacy - Photo Library Usage Description

配置License

获取到License后,需要按以下操作配置License文件。License的获取及详细信息请参见获取短视频SDK License

把下载的License文件导入到App工程中,在Info.plist文件中添加两个key,第一个key为AlivcLicenseKey,value为LicenseKey的值;第二个key为AlivcLicenseFile,value为内置证书文件(相对于mainBundle)的路径。示例如下所示:
keyvalue
AlivcLicenseKeyLicenseKey的值。取值示例:MoCTfuQ391Z01mNqG8f8745e23c8a457a8ff8d5faedc1****
AlivcLicenseFile内置证书文件(相对于mainBundle)的路径。

相关文档

API接口信息,请参见API参考

后续步骤,请参见初始化SDK