短編ドラマエフェクトを実現するためにプレーヤーコンポーネントのみが必要な場合は、この Topic を参照して Android プレーヤー SDK の統合ソリューションを確認してください。短編動画の作成も必要な場合は、ApsaraVideo MediaBox SDK for Android を統合してください。そうしないと、クラスの重複が発生し、コンパイルエラーにつながる可能性があります。
環境要件
Android Studio の最新バージョンを使用する必要があります。
システムバージョン:Android 4.3 以降。
ABI 互換性:SDK には armv7 または arm64 のデバイスアーキテクチャが必要です。
制限事項:Android プレーヤー SDK はエミュレーターをサポートしていません。統合後、物理デバイスで実行する必要があります。
前提条件
ステップ 1:SDK の統合
Gradle 統合
ネットワークが正常に動作しており、Alibaba Cloud Maven リポジトリにアクセスできることを確認する必要があります。
Maven 構成を追加します。
Gradle 7.x 以降との統合
プロジェクトの
setting.gradleファイルを次のように設定します。dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() jcenter() // Deprecated, replace with mavenCentral() gradually maven { url "https://maven.aliyun.com/repository/releases" } } }dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() jcenter() // Deprecated, replace with mavenCentral() gradually maven("https://maven.aliyun.com/repository/releases") } }Gradle 7.x 以前との統合
プロジェクトの
build.gradleファイルを次のように設定します。allprojects { repositories { google() mavenCentral() jcenter() // Deprecated, replace with mavenCentral() gradually maven { url "https://maven.aliyun.com/repository/releases" } } }allprojects { repositories { google() mavenCentral() jcenter() // Deprecated, replace with mavenCentral() gradually maven("https://maven.aliyun.com/repository/releases") } }
プレーヤー SDK をインポートします。
アプリの `build.gradle` ファイルを修正します。次の例に示すように、プレーヤー SDK を `dependencies` ノードに追加します。
説明プレーヤー SDK のバージョン番号が正しいことを確認する必要があります。そうしないと、エラーが発生し、インポートが失敗します。プレーヤー SDK のバージョンについては、「Android プレーヤー SDK のリリース履歴」をご参照ください。
dependencies { // AliPlayer プレーヤー SDK implementation 'com.aliyun.sdk.android:AliyunPlayer:7.12.0-full' }dependencies { // AliPlayer プレーヤー SDK implementation("com.aliyun.sdk.android:AliyunPlayer:7.12.0-full") }
ローカル統合
ネットワークの問題で Maven リポジトリからプレーヤー SDK パッケージをダウンロードできない場合は、SDK をローカルで統合できます。
以下の手順では、Android Studio Flamingo | 2022.2.1 を例として使用します。他の開発ツールの操作も同様です。
必要な AAR パッケージをご利用のプロジェクトの `libs` ディレクトリにコピーします。`libs` フォルダが存在しない場合は、手動で作成する必要があります。

プロジェクトの `build.gradle` ファイルを修正します。次の例に示すように、`flatDir` 設定を `allprojects` の `repositories` ノードに追加します。
flatDir { dirs 'libs' }アプリの build.gradle ファイルを修正して、dependencies ブロックに AAR ファイルと Conan への参照を追加します。例:
dependencies { implementation fileTree(dir: 'libs', include the following: ['*.aar']) }
リアルタイムストリーミング (RTS) 統合 (任意)
リアルタイムストリーミング (RTS) コンポーネントを統合するには、「Android での RTS ストリームプルの実装」をご参照ください。
ステップ 2:ライセンスの設定
グローバル環境 (中国本土、香港、マカオ、台湾を除く) を使用する場合、次のいずれかの方法を選択して Alibaba Cloud 国際サイト環境を設定できます。
方法 1:次の API を呼び出して、Alibaba Cloud 国際サイト環境のデフォルト設定を更新できます。
// グローバル環境 (中国本土、香港、マカオ、台湾を除く) を使用する場合、プレーヤー API を呼び出す前に、必ず次の API を呼び出してデフォルト設定を Alibaba Cloud 国際サイト環境に更新してください。これにより、後続のすべてのサービスが Alibaba Cloud 国際サイト環境で実行されるようになります。 // AlivcBase 統一 API を使用して Alibaba Cloud 国際サイト環境を設定します。これはランタイム中に変更できません。 AlivcBase.getEnvironmentManager().setGlobalEnvironment(AlivcEnv.GlobalEnv.ENV_SEA);方法 2 (推奨):プレーヤーバージョン V7.6.0 以降では、
XMLメソッドを使用して Alibaba Cloud 国際サイト環境を設定できます。AndroidManifest.xmlファイルに<meta-data>ノードを追加できます。<meta-data android:name="com.aliyun.alivc_env" android:value="SEA"/>設定例:

Android でのライセンスの統合に関する詳細については、「Android でのライセンスの統合」をご参照ください。
ステップ 3:権限の設定
app/src/main/AndroidManifest.xml で必要なすべての権限を宣言する必要があります。
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />ステップ 4:難読化の設定
難読化ルールファイル (`proguard-rules.pro`) で難読化を設定できます。例:
-keep class com.alivc.**{*;}
-keep class com.aliyun.**{*;}
-keep class com.cicada.**{*;}
-dontwarn com.alivc.**
-dontwarn com.aliyun.**
-dontwarn com.cicada.**ステップ 5:ログの有効化 (任意)
ログを有効にすると、問題の迅速な特定とトラブルシューティングに役立ち、パフォーマンスの最適化とユーザーエクスペリエンスの向上のためのデータサポートを提供します。必要に応じてこの機能を有効にできます。ログ検索の詳細については、「SDK ログの検索」をご参照ください。
// ログを有効にする
Logger.getInstance(context).enableConsoleLog(true);
// ログレベルを設定します。デフォルトは AF_LOG_LEVEL_INFO です。問題をトラブルシューティングするには、AF_LOG_LEVEL_TRACE に設定します。
Logger.getInstance(context).setLogLevel(Logger.LogLevel.AF_LOG_LEVEL_INFO);プロジェクト構成
ファイル名 | 説明 |
AliyunPlayer-x.x.x-full.aar | FFmpeg 動的ライブラリを含む完全な AAR パッケージ。 |
AliyunPlayer-x.x.x-part.aar | FFmpeg 動的ライブラリを含まない AAR パッケージ。 |
AlivcArtp-x.x.x.aar | ARTP プロトコルをサポートします。これは任意です。 |
AlivcArtc-x.x.x.aar | ARTC プロトコルをサポートします。これは任意です。 |
短編動画 SDK を統合しない場合は、`AliyunPlayer-x.xx.x-full.aar` パッケージに直接依存できます。
プレーヤーと短編動画 SDK の両方を統合する場合、プレーヤー SDK は `AliyunPlayer-x.x.x-part` パッケージに依存します。また、共通の FFmpeg バージョンを使用する必要があり、`com.aliyun.video.android:AlivcFFmpeg:x.x.x` パッケージへの追加の依存関係が必要です。
統合中に間違った SDK パッケージを使用すると、FFmpeg の競合が発生する可能性があります。
一般的な統合の問題
プレーヤーの使用中に発生する問題とその解決策の詳細については、「プレーヤーに関するよくある質問のまとめ」をご参照ください。