本文為您介紹iOS短視頻SDK的pod整合和手動設定操作。
前提條件
開發前的環境要求如下表所示。
類別 | 說明 |
系統版本 | 支援iOS 9.0及以上版本。 |
macOS High Sierra版本 | 支援macOS High Sierra 10.13及以上版本。 |
Xcode版本 | 支援Xcode 9.0及以上版本,下載Xcode。 |
pod方式整合(推薦)
在Podfile檔案中添加依賴。
重要如果使用短視頻SDK 3.24.0及以上版本,請務必使用FFmpeg 4.3.0及以上版本。
請確保網路環境可以訪問更新pod倉庫,並在pod install安裝完成後檢查framework版本號碼是否和官網最新版一致。
使用最少依賴整合方式整合短視頻SDK時,如果需要上傳媒資檔案到ApsaraVideo for VOD,請整合上傳SDK上傳,具體內容請參見上傳SDK。
預設整合(預設整合方式,包含資源套件和上傳SDK)
# 預設的整合方式,除短視頻SDK外,還會整合資源套件和上傳SDK。 pod 'AliyunVideoSDKPro', '~> 6.15.0'
最少依賴整合(不包含資源套件和上傳SDK)
# 僅整合短視頻SDK,不會整合資源套件和上傳SDK pod 'AliyunVideoSDKPro/min', '~> 6.15.0'
說明如需使用拍攝模組的人臉貼紙功能,則必須引入資源套件(AliyunVideoSDKPro.bundle),引入方式請參見設定資源套件引入路徑。
更新pod repo。
pod repo update
安裝pod。
pod install
手動方式整合(不推薦)
庫和資源依賴說明
手動方式整合不提供上傳庫,如果需要上傳媒資檔案到ApsaraVideo for VOD,請整合上傳SDK上傳,具體內容請參見上傳SDK。
需要手動下載整合相應版本的以下庫和bundle資源套件。
庫名 | 描述 | 下載地址 |
AliyunVideoSDKPro.framework | 動態庫 | |
AliyunVideoSDKPro.bundle | 資源套件(非必須) 說明 當需要使用拍攝模組的人臉貼紙功能時,則必須引入該資源套件。 | |
alivcffmpeg | 動態庫 |
操作步驟
手動方式整合較為繁瑣,並且提交到App Store時需要剝離模擬器版本(x86架構)的動態庫,否則會被拒絕。因此推薦使用pod方式整合。剝離模擬器動態庫的方式有如下兩種:
使用命令列工具lipo剝離模擬器架構的framework。
通過pod方式整合,pod會在打包時自動剝離掉模擬器架構的framework。
編譯報錯時,請修改
,修改為Objective-C++。
添加動態庫。
單擊General,選擇Frameworks, Libraries, and Embedded Content。單擊+,然後單擊Add Other…,匯入上述動態庫(例如AliyunVideoSDKPro.framework、alivcffmpeg.framework)。匯入之後請選擇Embed &Sign。
添加其他庫依賴。
單擊General,選擇Frameworks, Libraries, and Embedded Content。單擊+,分別添加MobileCoreServices.framework、SystemConfiguration.framework和libresolv.tbd依賴。
可選:將AliyunVideoSDKPro.bundle依賴匯入到工程。
單擊Build Phases,選擇Copy Bundle Resources,單擊+,然後單擊Add Other…,匯入AliyunVideoSDKPro.bundle。
設定項目
SDK整合後,開啟專案工程並修改以下配置:
配置 ,添加-ObjC。
開啟工程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)的路徑。樣本如下所示:
key | value |
AlivcLicenseKey | LicenseKey的值。取值樣本:MoCTfuQ391Z01mNqG8f8745e23c8a457a8ff8d5faedc1**** |
AlivcLicenseFile | 內建認證檔案(相對於mainBundle)的路徑。 |