全部产品
Search
文档中心

ApsaraVideo VOD:Integrasikan SDK

更新时间:Dec 06, 2025

Topik ini menjelaskan cara cepat mengintegrasikan ApsaraVideo Player SDK untuk iOS.

Prasyarat

  • Sistem operasi: iOS 8.0 atau yang lebih baru.

  • Alat pengembangan: Disarankan menggunakan Xcode. Langkah-langkah dalam topik ini berbasis Xcode. Anda dapat mengunduh ‎Xcode dari App Store.

  • Batasan: ApsaraVideo Player SDK untuk iOS tidak mendukung emulator. Anda harus menjalankan aplikasi pada perangkat fisik setelah integrasi.

Prasyarat

  • Anda telah mendaftarkan aplikasi dan memperoleh file lisensi yang mengotorisasi pemutar: AliVideoCert-********.crt. Untuk informasi selengkapnya, lihat Dapatkan lisensi.

  • Jika Anda mengintegrasikan SDK secara lokal, Anda harus mengunduh paket iOS player SDK. Kami menyarankan Anda mengunduh versi terbaru.

Catatan

  • File dSYM digunakan untuk mengurai tabel simbol crash saat Anda membuat paket aplikasi.

  • Saat menggunakan ApsaraVideo Player SDK untuk iOS, Anda memerlukan AlivcFFmpeg dan AliyunPlayer. File header pemutar terletak di AliyunPlayer.

  • Jika Anda mengintegrasikan ApsaraVideo Player SDK dan short video SDK sekaligus, perhatikan ketergantungan versi antara short video SDK, ApsaraVideo Player SDK, dan AlivcFFmpeg. Jika versinya tidak kompatibel, fitur short video SDK atau pemutar mungkin gagal berfungsi. Untuk informasi selengkapnya, lihat Ketergantungan versi AlivcFFmpeg.

  • Paket instalasi ApsaraVideo Player SDK untuk iOS mencakup arsitektur emulator. Anda harus menghapus arsitektur ini sebelum menerbitkan aplikasi. Jika tidak, pengiriman ke App Store akan gagal.

Langkah 1: Integrasikan SDK

Integrasikan menggunakan CocoaPods

  1. Instal CocoaPods. Perhatikan bahwa CocoaPods bergantung pada lingkungan Ruby.

    // Masukkan perintah berikut di terminal
    sudo gem install cocoapods
  2. Verifikasi instalasi CocoaPods.

    Setelah instalasi selesai, jalankan perintah pod --version di terminal untuk memverifikasi bahwa CocoaPods telah terinstal.

    xxx@ ~ % pod --version
    1.16.2
  3. Buat Podfile.

    Di terminal, navigasikan ke direktori proyek Anda dan jalankan perintah pod init.

    // Masuk ke direktori proyek Anda
    xxx@ ~ %  cd /path/yourProject
    // Hasilkan file
    xxx@ yourProject % pod init
  4. Edit Podfile untuk menambahkan dependensi SDK Pemutar Video Apsara.

    Catatan
    • Jika Anda ingin mengintegrasikan ApsaraVideo Player SDK dan short video SDK sekaligus, ganti AliPlayerSDK_iOS dalam kode berikut dengan AliPlayerPartSDK_iOS. AliPlayerPartSDK_iOS tidak berisi ffmpeg, sehingga mencegah konflik dengan ffmpeg di short video SDK.

    • Pastikan Anda memasukkan nomor versi ApsaraVideo Player SDK yang benar. Jika tidak, akan terjadi error impor. Anda dapat menemukan nomor versi di Catatan rilis ApsaraVideo Player SDK untuk iOS.

    source 'https://github.com/CocoaPods/Specs.git'
    platform:ios, '8.0'
    
    target 'yourProject' do
        # Disarankan menggunakan versi terbaru ApsaraVideo Player SDK.
        pod 'AliPlayerSDK_iOS'
    end
  5. (Opsional) Tambahkan dependensi pada versi tertentu dari SDK Pemutar Video Apsara.

    source 'https://github.com/CocoaPods/Specs.git'
    platform:ios, '8.0'
    
    player_sdk_version = '7.10.0'
    
    target 'yourProject' do
        # Disarankan menggunakan versi terbaru ApsaraVideo Player SDK.
        pod 'AliPlayerSDK_iOS' , player_sdk_version
    end
  6. Instal dependensi.

    Jalankan perintah instalasi untuk menambahkan dependensi SDK Pemutar Video Apsara ke repositori lokal Anda.

    pod install

    Keluaran berikut menunjukkan instalasi berhasil.

    xxx@ yourProject % pod install
    Analyzing dependencies
    Downloading dependencies
    Installing AliPlayerSDK_iOS (7.8.0)
    Generating Pods project
    Integrating client project
    Pod installation complete! There is 1 dependency from the Podfile and 1 total pod installed.

    Untuk memperbarui ApsaraVideo Player SDK, jalankan perintah berikut.

    pod update AliPlayerSDK_iOS

Integrasikan secara lokal

Catatan

Jika Anda mengintegrasikan ApsaraVideo Player SDK dan short video SDK sekaligus, impor hanya satu framework AlivcFFmpeg dan pastikan versinya benar.

  1. Unduh ApsaraVideo Player SDK untuk iOS.

  2. Tambahkan framework pemutar ke Frameworks, Libraries, and Embedded Content, lalu atur Embed menjadi Embed & Sign.

    • alivcffmpeg.framework: Lapisan dasar pemutar.

    • AliyunMediaDownloader.framework: Digunakan untuk unduhan offline.

    • AliyunPlayer.framework: Pemutar.

      本地集成

  3. Klik tab Build Settings.

  4. Pada bagian Search Paths, klik Framework Search Paths dan atur nilainya ke direktori framework lokal.

Integrasikan komponen RTS (menggunakan CocoaPods) (Opsional)

Untuk informasi selengkapnya tentang mengintegrasikan komponen Real-Time Streaming (RTS), lihat Implementasikan penarikan aliran RTS di iOS.

Langkah 2: Konfigurasikan lisensi

Penting

Jika Anda menggunakan lingkungan global—yang tidak mencakup Daratan Tiongkok, Hong Kong, dan Makau—Anda harus memanggil antarmuka berikut untuk memperbarui konfigurasi default ke lingkungan internasional sebelum memanggil API pemutar apa pun.

  1. Metode 1: Panggil antarmuka berikut untuk memperbarui konfigurasi default ke lingkungan internasional.

    // Saat menggunakan lingkungan global (tidak termasuk Daratan Tiongkok, Hong Kong, dan Makau), pastikan Anda memanggil antarmuka berikut untuk memperbarui konfigurasi default ke lingkungan internasional. Ini memastikan semua layanan selanjutnya berjalan di lingkungan internasional.
    // Gunakan antarmuka terpadu AlivcBase untuk mengatur lingkungan internasional. Pengaturan ini tidak dapat diubah selama waktu proses.
    AlivcBase.EnvironmentManager.globalEnvironment = ENV_SEA;
  2. Metode 2 (Disarankan): Untuk player SDK V7.6.0 dan yang lebih baru, Anda dapat mengonfigurasi lingkungan internasional melalui file Info.plist.

    Buka file Info.plist dan atur AlivcEnv menjadi SEA.

    // Konfigurasikan lingkungan saat ini sebagai lingkungan internasional.
    <key>AlivcEnv</key>
    <string>SEA</string>

    Gambar berikut menunjukkan contoh konfigurasi:1754557498401-1d235342-3c0b-4c83-bcee-ae7656e8ff23

Untuk informasi selengkapnya, lihat Integrasikan Lisensi di iOS.

Langkah 3: Aktifkan logging (Opsional)

Logging membantu Anda dengan cepat menemukan dan memecahkan masalah serta menyediakan data untuk optimasi performa dan peningkatan pengalaman pengguna. Anda dapat memilih apakah akan mengaktifkan fitur ini berdasarkan skenario bisnis Anda. Untuk informasi selengkapnya tentang cara memperoleh log, lihat Peroleh Log SDK.

// Aktifkan logging.
[AliPlayer setEnableLog:YES];
// Atur tingkat log. Tingkat default adalah LOG_LEVEL_INFO. Untuk memecahkan masalah, atur tingkat menjadi LOG_LEVEL_TRACE.
[AliPlayer setLogCallbackInfo:LOG_LEVEL_INFO callbackBlock:nil];

Struktur proyek

Framework

Deskripsi

alivcffmpeg.framework

Lapisan dasar pemutar. Wajib.

AliyunMediaDownloader.framework

Digunakan untuk unduhan offline. Opsional.

AliyunPlayer.framework

Pemutar. Wajib.

artcSource.framework

Mendukung protokol ARTC. Opsional.

Catatan

Untuk mendukung protokol artc, Anda juga harus menambahkan RtsSDK.framework. Untuk proses integrasinya, lihat Implementasikan penarikan aliran RTS di iOS.

aemFilter.framework

Peningkatan audio. Opsional.

libPluginSR.framework

Video Ultra HD. Opsional.

normalsrFilter.framework

Video Ultra HD. Opsional.

mpfFilter.framework

Video Ultra HD. Opsional.

srFilter.framework

Video Ultra HD. Opsional.

vfiFilter.framework

Interpolasi frame video. Opsional.

vvcCodecPlugin.framwork

Plugin decoding H.266. Opsional.

Permasalahan integrasi umum

Cara menggunakan CocoaPods

Cara menggunakan CocoaPods

// Pisahkan proyek dari dependensi CocoaPods.
pod deintegrate 

// Perbarui indeks repositori sumber CocoaPods lokal.
// Skenario:
// Saat Anda menambahkan dependensi baru, perintah ini memastikan Anda bisa mendapatkan versi terbaru yang tersedia.
// Jika versi pustaka tertentu tidak tersedia atau Anda tahu ada versi baru tetapi tidak muncul di proyek Anda, jalankan perintah ini untuk memperbarui.
pod repo update

// Perbarui pods dalam proyek.
// Skenario:
// Gunakan perintah ini saat ingin memperbarui semua pods dalam proyek ke versi terbaru yang didukung.
// Jika Anda menentukan rentang versi untuk beberapa dependensi di Podfile, 'pod update' akan mencoba memenuhi rentang tersebut dan memperbarui pustaka yang sesuai.
pod update

// Perintah ini memiliki fungsi yang sama dengan 'pod install', tetapi memaksa pembaruan indeks repositori CocoaPods lokal sebelum instalasi.
// Skenario:
// Disarankan menggunakan perintah ini saat Anda menambahkan pustaka baru atau ingin menggunakan versi terbaru dari pustaka yang ditentukan di Podfile. Ini sangat berguna jika Anda melihat pesan error yang menunjukkan versi pustaka yang diperlukan tidak tersedia.
pod install --repo-update

// Bersihkan cache pods.
// Catatan:
// 1. Membersihkan cache tidak mengubah file Podfile.lock atau Podfile Anda. Oleh karena itu, begitu Anda menjalankan 'pod install' atau 'pod update', CocoaPods akan mengunduh ulang pustaka yang diperlukan berdasarkan status manifes dan file lock yang ada.
// 2. Membersihkan cache bukan langkah rutin. Ini hanya diperlukan saat Anda menghadapi masalah tertentu. Dalam kondisi normal, CocoaPods mengelola cache-nya dengan baik.
pod cache clean --all

Konflik simbol dengan AlivcFFmpeg saat integrasi

Solusi:

  • Jika terjadi konflik simbol dengan AlivcFFmpeg, hapus framework AlivcFFmpeg yang berlebih dan pertahankan hanya satu. AlivcFFmpeg merupakan ekstensi ffmpeg yang telah dikustomisasi dan penting agar ApsaraVideo Player SDK berfungsi. Oleh karena itu, Anda harus menghapus framework AlivcFFmpeg pihak ketiga dan mempertahankan yang disediakan bersama ApsaraVideo Player SDK untuk iOS. Perhatikan bahwa hal ini mungkin menyebabkan masalah, seperti pemutar pihak ketiga tidak berfungsi dengan benar.

Error sandbox

  • Masalah:

    截屏2024-12-06 16

  • Solusi:

    Di Build Settings, atur User Script Sandboxing menjadi No.

    1735888658101-5633103e-468d-4341-adaa-f5f52814aa36

Integrasikan short video SDK

Untuk mengintegrasikan iOS player SDK dan short video SDK ke dalam proyek Anda, kami menyarankan menggunakan iOS all-in-one SDK guna mencegah error kelas duplikat dan kegagalan kompilasi.

Untuk informasi selengkapnya tentang masalah umum pemutar, lihat FAQ Pemutar.

Dokumentasi fitur

Fitur Dasar

Fitur Lanjutan