このトピックでは、ApsaraVideo Player SDK for iOS をすばやく統合する方法について説明します。
要件
オペレーティングシステム:iOS 8.0 以降。
開発ツール:Xcode を推奨します。このトピックの手順は Xcode に基づいています。ダウンロード先:Xcode。
ApsaraVideo Player SDK for iOS はシミュレータをサポートしていません。実機でアプリケーションを実行する必要があります。
前提条件
注意事項
アプリをパッケージ化する際、dSYM ファイルはクラッシュレポートのシンボリケーションに使用されます。
ApsaraVideo Player SDK for iOS を使用する場合、AlivcFFmpeg フレームワークと AliyunPlayer フレームワークが必要です。プレーヤーのヘッダーファイルは AliyunPlayer フレームワークに含まれています。
プレーヤー SDK とショートビデオ SDK の両方を統合する場合は、ショートビデオ SDK、プレーヤー SDK、AlivcFFmpeg 間のバージョン互換性を確保してください。バージョンが一致しないと、機能が正常に動作しない可能性があります。詳細については、「AlivcFFmpeg の依存関係」をご参照ください。
ApsaraVideo Player SDK for iOS のインストールパッケージには、シミュレータアーキテクチャが含まれています。App Store への提出前に、これらのアーキテクチャを削除する必要があります。削除しない場合、リジェクトされる可能性があります。
ステップ 1:SDK の統合
CocoaPods による統合
CocoaPods をインストールします。Ruby 環境が必要です。
// ターミナルで次のコマンドを実行します。 sudo gem install cocoapodsCocoaPods のインストールを確認します。
インストール後、ターミナルで
pod --versionを実行してインストールを確認します。xxx@ ~ % pod --version 1.16.2Podfile を作成します。
ターミナルでプロジェクトディレクトリに移動し、
pod initを実行して Podfile を作成します。// プロジェクトディレクトリに移動します。 xxx@ ~ % cd /path/yourProject // Podfile を生成します。 xxx@ yourProject % pod initPodfile を編集して、プレーヤー SDK の依存関係を追加します。
説明プレーヤー SDK とショートビデオ SDK の両方を統合する場合は、次のコード内の
AliPlayerSDK_iOSをAliPlayerPartSDK_iOSに置き換えてください。AliPlayerPartSDK_iOSには FFmpeg が含まれていないため、ショートビデオ SDK の FFmpeg との競合を防ぐことができます。プレーヤー SDK の正しいバージョン番号を入力してください。そうしないと、インポートに失敗し、エラーが発生します。プレーヤー SDK のバージョンについては、「ApsaraVideo Player SDK for iOS リリースノート」をご参照ください。
source 'https://github.com/CocoaPods/Specs.git' platform:ios, '8.0' target 'yourProject' do # プレーヤー SDK。最新バージョンの使用を推奨します。 pod 'AliPlayerSDK_iOS' end(オプション) プレーヤー SDK の特定のバージョンへの依存関係を追加します。
source 'https://github.com/CocoaPods/Specs.git' platform:ios, '8.0' player_sdk_version = '7.15.0' target 'yourProject' do # プレーヤー SDK。最新バージョンの使用を推奨します。 pod 'AliPlayerSDK_iOS' , player_sdk_version end依存関係をインストールします。
次のコマンドを実行して依存関係をインストールします。
pod install次のサンプル出力は、インストールが正常に完了したことを示しています。
xxx@ yourProject % pod install Analyzing dependencies Downloading dependencies Installing AliPlayerSDK_iOS (7.15.0) Generating Pods project Integrating client project Pod installation complete! There is 1 dependency from the Podfile and 1 total pod installed.次のコマンドを実行してプレーヤー SDK を更新します。
pod update AliPlayerSDK_iOS
手動統合
プレーヤー SDK とショートビデオ SDK の両方を統合する場合は、AlivcFFmpeg フレームワークを 1 つだけインポートし、バージョンが正しいことを確認してください。
ApsaraVideo Player SDK for iOS をダウンロードします。
プレーヤーフレームワークを Frameworks, Libraries, and Embedded Content に追加し、Embed を Embed & Sign に設定します。
alivcffmpeg.framework:プレーヤーの基盤となるフレームワークです。
AliyunMediaDownloader.framework:オフラインダウンロードに使用されます。
AliyunPlayer.framework:プレーヤーフレームワークです。

Build Settings タブをクリックします。
Search Paths セクションで、Framework Search Paths をローカルのフレームワークディレクトリに設定します。
(オプション) RTS の統合 (CocoaPods)
Real-Time Streaming (RTS) コンポーネントを統合するには、「iOS での RTS ベースのプルストリームの実装」をご参照ください。
ステップ 2:ライセンスの設定
中国本土、香港、マカオ以外の地域 (国際サイト) でプレーヤーを使用する場合は、他のプレーヤー API を呼び出す前に、次の API を呼び出して環境を設定する必要があります。
方法 1:次の API を呼び出して、デフォルト設定を国際サイト環境に更新します。
// 国際サイトの場合、他のプレーヤー API の前にこの API を呼び出して // 環境を設定する必要があります。この設定は実行時に変更できません。 AlivcBase.EnvironmentManager.globalEnvironment = ENV_SEA;方法 2 (推奨):プレーヤー SDK バージョン 7.6.0 以降では、
Info.plistファイルで国際サイト環境を設定できます。Info.plistファイルを開き、AlivcEnvの値をSEAに変更します。// 現在の環境を国際サイトとして設定します。 <key>AlivcEnv</key> <string>SEA</string>次の図は設定例を示しています:

iOS クライアントでライセンスを設定するには、「iOS でのライセンスの設定」をご参照ください。
ステップ 3:ログ記録の有効化 (オプション)
問題の特定とトラブルシューティングに役立つように、ログ記録を有効にします。ログの取得方法については、「SDK ログの取得」をご参照ください。
// ログ記録を有効にします。
[AliPlayer setEnableLog:YES];
// ログレベルを設定します。デフォルトは LOG_LEVEL_INFO です。トラブルシューティングの場合は、LOG_LEVEL_TRACE に設定します。
[AliPlayer setLogCallbackInfo:LOG_LEVEL_INFO callbackBlock:nil];プロジェクト構造
フレームワーク | 説明 |
alivcffmpeg.framework | プレーヤーの基盤となるフレームワークです。必須です。 |
AliyunMediaDownloader.framework | オフラインダウンロードに使用されます。オプションです。 |
AliyunPlayer.framework | プレーヤーフレームワークです。必須です。 |
artcSource.framework | ARTC プロトコルをサポートします。オプションです。 説明 ARTC プロトコルをサポートするには、RtsSDK.framework も追加する必要があります。統合の詳細については、「iOS での RTS ベースのプルストリームの実装」をご参照ください。 |
aemFilter.framework | 音声強化を有効にします。オプションです。 |
libPluginSR.framework | 超解像を有効にします。オプションです。 |
normalsrFilter.framework | 超解像を有効にします。オプションです。 |
srFilter.framework | 超解像を有効にします。オプションです。 |
vfiFilter.framework | ビデオフレーム挿入を有効にします。オプションです。 |
vvcCodecPlugin.framework | H.266 デコードプラグインです。オプションです。 |
よくある質問
CocoaPods の使用
AlivcFFmpeg とのシンボルの競合
解決策:
AlivcFFmpeg とのシンボルの競合が発生した場合は、重複する依存関係を削除し、1 つだけ残してください。ApsaraVideo Player SDK for iOS に付属するバージョンを保持し、サードパーティ製のものを削除することを推奨します。ただし、これによりサードパーティプレーヤーの機能が動作しなくなる可能性がある点にご注意ください。
サンドボックスエラー
問題:

解決策:
UserSetting で、User Script SandBoxing を NO に設定します。

ショートビデオ SDK の統合
ApsaraVideo Player SDK for iOS とショートビデオ SDK の両方を統合するには、iOS 用オールインワン SDK を使用して、クラスの重複による問題やコンパイルエラーを回避してください。
その他のプレーヤーに関する問題と解決策については、「ApsaraVideo Player のよくある質問」をご参照ください。