前提条件
iOS 向けショートビデオ SDK を初期化する前に、以下の操作が完了していることを確認してください。
Android 向けショートビデオ SDK のライセンスを取得してアクティブ化します。詳細については、「ショートビデオ SDK のライセンスを取得して使用する」をご参照ください。
iOS 向けショートビデオ SDK が統合されています。 ショートビデオ SDK V3.29.0 以降では、SDK を登録する前にライセンスを設定する必要があります。 詳細については、「Android 向けショートビデオ SDK を統合する」をご参照ください。
ヘッダーファイルをインポートする
ショートビデオ SDK のヘッダーファイルは、ショートビデオ SDK のメソッドを使用する際に準拠する必要がある仕様を定義しています。 ショートビデオ SDK を使用するには、最初にヘッダーファイルをインポートする必要があります。
#import <AliyunVideoSDKPro/AliyunVideoSDKPro.h>
iOS 向けショートビデオ SDK を登録する
ショートビデオ SDK 3.29.0 以降を使用する場合は、アプリケーションの起動後に SDK を登録する必要があります。 そうしないと、ショートビデオ SDK を使用できません。 以下のコードは、異なるバージョンのショートビデオ SDK を登録する方法を示しています。
// ショートビデオ SDK V3.30.0 以降を登録します。
NSError *error = [AliyunVideoSDKInfo registerSDK]; // nil が返された場合、登録は成功です。
// ほとんどの場合、登録の失敗はライセンスの統合の問題が原因です。 コードに Assert 関数を追加することをお勧めします。 これにより、SDK の登録中にエラーが発生した場合、システムはエラーメッセージを返し、エラーの修正方法に関する提案を提供します。
NSAssert2(error == nil, @"SDK registration failed. %@;%@", error.localizedDescription, error.localizedRecoverySuggestion);
// ショートビデオ SDK 3.29.0 を登録します。
// ライセンスファイルの名前を license.crt に変更し、アプリケーションプロジェクトに追加します。 次に、以下のコードを使用して、ライセンスファイルが格納されているディレクトリを取得します。
NSString *licenseFilePath = [NSBundle.mainBundle pathForResource:@"license" ofType:@"crt"];
// 取得したライセンスキーとライセンスファイルパスを使用して SDK を登録します。
[AliyunVideoSDKInfo registerSDKWithLicenseKey:LicenseKey licenseFile:licenseFilePath];
ライセンスキーとライセンスファイルが SDK に正常にインポートされた場合、登録は成功です。 ただし、登録の成功は認証の成功を示すものではありません。
次のコードを使用して、ライセンスの状態を確認できます。
AliyunVideoLicense *license = AliyunVideoLicenseManager.CurrentLicense;
特定の機能または付加価値サービスを使用する場合、SDK 認証が必要です。 認証に失敗した場合、API 操作への応答から認証結果を取得できます。 また、リスナーで認証結果をリッスンすることもできます。
// ショートビデオ SDK V3.30.0 以降の認証結果を取得します。
AliyunVideoLicenseManager.EventDelegate = self; // 詳細については、AliyunVideoLicenseEventDelegate の説明を参照してください。
認証結果を表示します。
AliyunVideoLicenseResultCode code = [AliyunVideoLicenseManager check];
ライセンスを更新した場合、または付加価値サービスを購入した場合は、次のコードを使用してライセンスを更新します。 デフォルトでは、システムは 15 分ごとにライセンスを更新します。
[AliyunVideoLicenseManager Refresh:^(AliyunVideoLicenseRefreshCode code){
// ライセンス検証結果に関する情報。
}];
リソースパッケージのパスを指定する
最小依存関係統合方法を使用してショートビデオ SDK を統合する場合でも、AliyunVideoSDKPro.bundle リソースパッケージを追加する場合は、次の手順を実行して、アプリケーションの実行時にリソースパッケージを自動的にダウンロードできます。 リソースパッケージは、ダウンロードが完了した後、ショートビデオ SDK に追加されます。
リソースパッケージをクラウドにアップロードします。 たとえば、Object Storage Service (OSS) バケットにリソースパッケージをアップロードできます。
アプリケーションの起動時にリソースパッケージが存在するかどうかを確認します。 リソースパッケージが存在しない場合は、システムはリソースパッケージをローカルデバイスにダウンロードします。 リソースパッケージが既に存在する場合は、次の手順に進みます。
リソースパッケージが格納されているパスを指定します。 サンプルコード:
[AliyunVideoSDKInfo setSDKBundlePath:@"ローカルデバイス上のリソースバンドルが格納されているパス"];
ログ出力
デフォルトでは、ショートビデオ SDK は AlivcLogWarn レベルでアラートログとエラーログを生成します。 トラブルシューティングのために、ログレベルを設定して、より多くのレベルのログを生成できます。
// 以下のレベルのログがサポートされています。
typedef NS_ENUM(NSInteger, AlivcLogLevel)
{
AlivcLogClose = 1,
AlivcLogVerbose,
AlivcLogDebug,
AlivcLogInfo,
AlivcLogWarn,
AlivcLogError,
AlivcLogFatal
};
// 生成するログのレベルを指定します。
[AliyunVideoSDKInfo setLogLevel:AlivcLogDebug];
バージョン情報を照会する
次のコードを使用して、ショートビデオ SDK のバージョン情報を表示できます。 これにより、統合された SDK のバージョンを確認し、SDK の使用時に発生する可能性のある問題のトラブルシューティングに役立ちます。
[AliyunVideoSDKInfo printSDKInfo];
必要に応じて情報を印刷することもできます。
NSString *version = [AliyunVideoSDKInfo version]; // バージョン番号。
NSString *module = [AliyunVideoSDKInfo module]; // バージョンタイプ。
int moduleCode =[AliyunVideoSDKInfo versionCode]; // バージョンタイプのコードを表示します。
NSString *buildId =[AliyunVideoSDKInfo videoSDKBuildId]; // SDK バージョンのビルド ID を表示します。
NSLog(@"\n==============\nVERSION: %@\nBUILD_ID: %@\nMODULE: %@\nMODULE_CODE: %d\n==============", version, buildId, module, moduleCode);