Jika Anda hanya memerlukan komponen player untuk mencapai efek drama pendek, rujuk topik ini untuk solusi integrasi Android Player SDK. Jika Anda juga perlu membuat video pendek, integrasikan ApsaraVideo MediaBox SDK for Android. Jika tidak, duplikasi kelas dapat terjadi dan menyebabkan kegagalan kompilasi.
Persyaratan lingkungan
Anda harus menggunakan versi terbaru Android Studio.
Versi sistem: Android 4.3 atau yang lebih baru.
Kompatibilitas ABI: SDK memerlukan arsitektur perangkat armv7 atau arm64.
Batasan: Android Player SDK tidak mendukung emulator. Setelah integrasi, Anda harus menjalankannya pada perangkat fisik.
Prasyarat
Anda harus mendaftar dan memperoleh file lisensi otorisasi player
AliVideoCert-********.crt. Untuk informasi selengkapnya, lihat Dapatkan Lisensi.Sebelum mengintegrasikan SDK secara lokal, Anda harus mengunduh paket Android Player SDK. Anda dapat mengunduh versi terbaru.
Langkah 1: Integrasikan SDK
Integrasi Gradle
Pastikan jaringan Anda berfungsi dan Anda dapat mengakses Repositori Maven Alibaba Cloud.
Tambahkan konfigurasi Maven.
Integrasikan dengan Gradle 7.x dan yang lebih baru
Konfigurasikan file
setting.gradledi proyek Anda sebagai berikut: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") } }Integrasikan dengan Gradle 7.x dan yang lebih lama
Konfigurasikan file
build.gradledi proyek Anda sebagai berikut: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") } }
Impor Player SDK.
Modifikasi file `build.gradle` aplikasi Anda dan tambahkan Player SDK ke node `dependencies`, seperti pada contoh berikut:
CatatanPastikan nomor versi Player SDK benar. Jika tidak, akan terjadi error dan impor gagal. Untuk versi Player SDK, lihat Riwayat Rilis Android Player SDK.
dependencies { // AliPlayer Player SDK implementation 'com.aliyun.sdk.android:AliyunPlayer:7.12.0-full' }dependencies { // AliPlayer Player SDK implementation("com.aliyun.sdk.android:AliyunPlayer:7.12.0-full") }
Integrasi Lokal
Jika masalah jaringan mencegah Anda mengunduh paket Player SDK dari Repositori Maven, Anda dapat mengintegrasikan SDK secara lokal.
Langkah-langkah berikut menggunakan Android Studio Flamingo | 2022.2.1 sebagai contoh. Operasi untuk alat pengembangan lainnya serupa.
Salin paket AAR yang diperlukan ke direktori `libs` proyek Anda. Jika folder `libs` tidak ada, buat secara manual.

Modifikasi file `build.gradle` di proyek Anda. Tambahkan pengaturan `flatDir` ke node `repositories` dalam `allprojects`, seperti pada contoh berikut:
flatDir { dirs 'libs' }Modifikasi file build.gradle aplikasi untuk menambahkan referensi ke file AAR dan Conan di blok dependencies. Contohnya:
dependencies { implementation fileTree(dir: 'libs', include the following: ['*.aar']) }
Integrasi Real-Time Streaming (RTS) (Opsional)
Untuk mengintegrasikan komponen Real-Time Streaming (RTS), lihat Implementasikan Penarikan Stream RTS pada Android.
Langkah 2: Konfigurasikan Lisensi
Saat menggunakan lingkungan global (tidak termasuk Tiongkok daratan, Hong Kong, Makau, dan Taiwan), Anda dapat memilih salah satu metode berikut untuk mengonfigurasi lingkungan Alibaba Cloud International Website.
Metode 1: Panggil API berikut untuk memperbarui konfigurasi default ke lingkungan Alibaba Cloud International Website.
// Saat menggunakan lingkungan global (tidak termasuk Tiongkok daratan, Hong Kong, Makau, dan Taiwan), pastikan Anda memanggil API berikut untuk memperbarui konfigurasi default ke lingkungan Alibaba Cloud International Website sebelum memanggil API player apa pun. Ini memastikan semua layanan selanjutnya berjalan di lingkungan Alibaba Cloud International Website. // Gunakan API terpadu AlivcBase untuk mengatur lingkungan Alibaba Cloud International Website. Pengaturan ini tidak dapat diubah selama waktu proses. AlivcBase.getEnvironmentManager().setGlobalEnvironment(AlivcEnv.GlobalEnv.ENV_SEA);Metode 2 (Direkomendasikan): Untuk versi player V7.6.0 dan yang lebih baru, Anda dapat mengonfigurasi lingkungan Alibaba Cloud International Website menggunakan metode
XML.Tambahkan node
<meta-data>ke fileAndroidManifest.xml.<meta-data android:name="com.aliyun.alivc_env" android:value="SEA"/>Contoh konfigurasi:

Untuk informasi selengkapnya tentang integrasi lisensi pada Android, lihat Integrasikan Lisensi pada Android.
Langkah 3: Konfigurasikan Izin
Deklarasikan semua izin yang diperlukan di 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" />Langkah 4: Konfigurasikan Obfuscation
Konfigurasikan obfuscation di file aturan obfuscation (`proguard-rules.pro`). Contohnya:
-keep class com.alivc.**{*;}
-keep class com.aliyun.**{*;}
-keep class com.cicada.**{*;}
-dontwarn com.alivc.**
-dontwarn com.aliyun.**
-dontwarn com.cicada.**Langkah 5: Aktifkan Logging (Opsional)
Mengaktifkan log membantu Anda mengidentifikasi dan memecahkan masalah dengan cepat, serta memberikan dukungan data untuk optimasi performa dan peningkatan pengalaman pengguna. Anda dapat mengaktifkan fitur ini sesuai kebutuhan. Untuk informasi selengkapnya tentang pengambilan log, lihat Ambil Log SDK.
// Aktifkan logging
Logger.getInstance(context).enableConsoleLog(true);
// Atur tingkat log. Default-nya adalah AF_LOG_LEVEL_INFO. Untuk memecahkan masalah, atur ke AF_LOG_LEVEL_TRACE.
Logger.getInstance(context).setLogLevel(Logger.LogLevel.AF_LOG_LEVEL_INFO);Struktur Proyek
Nama File | Deskripsi |
AliyunPlayer-x.x.x-full.aar | Paket AAR lengkap yang berisi library dinamis FFmpeg. |
AliyunPlayer-x.x.x-part.aar | Paket AAR yang tidak berisi library dinamis FFmpeg. |
AlivcArtp-x.x.x.aar | Mendukung protokol ARTP. Ini bersifat opsional. |
AlivcArtc-x.x.x.aar | Mendukung protokol ARTC. Ini bersifat opsional. |
Jika Anda tidak mengintegrasikan short video SDK, Anda dapat langsung bergantung pada paket `AliyunPlayer-x.xx.x-full.aar`.
Jika Anda mengintegrasikan player dan short video SDK, Player SDK bergantung pada paket `AliyunPlayer-x.x.x-part`. Anda juga harus menggunakan versi FFmpeg umum, yang memerlukan dependensi tambahan pada paket `com.aliyun.video.android:AlivcFFmpeg:x.x.x`.
Penggunaan paket SDK yang salah saat integrasi dapat menyebabkan konflik FFmpeg.
Permasalahan Integrasi Umum
Untuk informasi selengkapnya tentang isu dan solusi yang dihadapi saat menggunakan player, lihat Ringkasan FAQ Player.