全部产品
Search
文档中心

ApsaraVideo VOD:Integrasikan SDK

更新时间:Jan 29, 2026

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

Persyaratan lingkungan

  • Sistem operasi: iOS 8.0 atau yang lebih baru.

  • Alat pengembangan: Disarankan menggunakan Xcode. Langkah-langkah dalam topik ini menggunakan Xcode. Anda dapat mengunduhnya dari ‎Xcode.

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

Prasyarat

  • Anda telah mendaftar dan memperoleh file lisensi yang berisi otorisasi pemutar: AliVideoCert-********.crt. Untuk informasi selengkapnya, lihat Dapatkan lisensi.

  • Untuk integrasi lokal, unduh paket ApsaraVideo Player SDK untuk iOS. Kami menyarankan Anda mengunduh versi terbaru.

Catatan

  • File dSYM digunakan untuk mengurai tabel simbol crash saat packaging.

  • Kedua komponen AlivcFFmpeg dan AliyunPlayer diperlukan saat menggunakan ApsaraVideo Player SDK untuk iOS. File header pemutar berada di AliyunPlayer.

  • Jika Anda ingin mengintegrasikan ApsaraVideo Player SDK dan short video SDK secara bersamaan, perhatikan ketergantungan versi antara short video SDK, ApsaraVideo Player SDK, dan AlivcFFmpeg. Jika tidak, fitur-fitur short video SDK atau pemutar mungkin tidak 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, pengajuan ke App Store akan ditolak.

Langkah 1: Integrasikan SDK

Integrasi CocoaPods

  1. Instal CocoaPods. CocoaPods bergantung pada lingkungan Ruby.

    // Jalankan 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. Jalankan perintah pod init untuk membuat Podfile.

    // 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 secara bersamaan, ganti AliPlayerSDK_iOS dengan AliPlayerPartSDK_iOS pada kode berikut. AliPlayerPartSDK_iOS tidak menyertakan ffmpeg. Hal ini mencegah konflik dengan ffmpeg di short video SDK.

    • Pastikan Anda memasukkan nomor versi yang benar untuk ApsaraVideo Player SDK. Jika tidak, terjadi error dan impor gagal. Untuk informasi selengkapnya tentang versi SDK, lihat Catatan rilis ApsaraVideo Player SDK untuk iOS.

    source 'https://github.com/CocoaPods/Specs.git'
    platform:ios, '8.0'
    
    target 'yourProject' do
        # ApsaraVideo Player SDK. Disarankan menggunakan versi terbaru.
        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.11.0'
    
    target 'yourProject' do
        # ApsaraVideo Player SDK. Disarankan menggunakan versi terbaru.
        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

    Output berikut menunjukkan bahwa instalasi berhasil.

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

    Jalankan perintah berikut untuk memperbarui ApsaraVideo Player SDK.

    pod update AliPlayerSDK_iOS

Integrasi lokal

Catatan

Jika Anda ingin mengintegrasikan ApsaraVideo Player SDK dan short video SDK secara bersamaan, impor hanya satu 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, atur Framework Search Paths ke direktori yang berisi framework lokal.

Integrasi Real-Time Streaming (RTS) (integrasi CocoaPods) (Opsional)

Untuk mengintegrasikan komponen RTS, lihat Implementasikan penarikan aliran RTS pada iOS.

Langkah 2: Konfigurasikan lisensi

Penting

Saat menggunakan lingkungan global—yang mengecualikan Daratan Tiongkok, Hong Kong, dan Makau—pastikan Anda memanggil antarmuka berikut untuk memperbarui konfigurasi default ke lingkungan situs internasional Alibaba Cloud sebelum memanggil API pemutar apa pun.

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

    // Saat menggunakan lingkungan global (mengecualikan Daratan Tiongkok, Hong Kong, dan Makau), pastikan untuk memanggil antarmuka berikut guna memperbarui konfigurasi default ke lingkungan Situs Web Internasional Alibaba Cloud sebelum memanggil API pemutar apa pun. Hal ini memastikan semua layanan selanjutnya berjalan di lingkungan Situs Web Internasional Alibaba Cloud.
    // Atur lingkungan Situs Web Internasional Alibaba Cloud melalui antarmuka terpadu AlivcBase. Pengaturan ini tidak dapat diubah selama waktu proses.
    AlivcBase.EnvironmentManager.globalEnvironment = ENV_SEA;
  2. Metode 2 (Disarankan): Untuk ApsaraVideo Player SDK V7.6.0 dan versi yang lebih baru, Anda dapat mengonfigurasi lingkungan situs internasional Alibaba Cloud menggunakan metode Info.Plist.

    Buka file Info.plist lalu ubah nilai AlivcEnv menjadi SEA.

    // Konfigurasikan lingkungan saat ini sebagai lingkungan Situs Web Internasional Alibaba Cloud.
    <key>AlivcEnv</key>
    <string>SEA</string>

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

Untuk mengintegrasikan lisensi pada klien iOS, lihat Integrasikan lisensi pada klien iOS.

Langkah 3: Aktifkan logging (Opsional)

Mengaktifkan log membantu Anda dengan cepat menemukan dan memecahkan masalah. Log juga menyediakan data untuk optimasi performa dan peningkatan pengalaman pengguna. Anda dapat mengaktifkan logging sesuai skenario bisnis Anda. Untuk mendapatkan log, lihat Dapatkan 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 perlu menambahkan RtsSDK.framework. Untuk proses integrasi spesifiknya, lihat Implementasikan penarikan aliran RTS pada iOS.

aemFilter.framework

Peningkatan audio. Opsional.

libPluginSR.framework

Video Ultra HD. Opsional.

normalsrFilter.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.
// Saat versi library tidak tersedia, atau Anda tahu ada versi baru tetapi tidak muncul di proyek Anda, Anda dapat menggunakan perintah ini untuk memperbarui.
pod repo update

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

// Menjalankan fungsi yang sama seperti 'pod install', tetapi memaksa pembaruan indeks repositori lokal CocoaPods sebelum instalasi.
// Skenario:
// Perintah ini merupakan pilihan yang baik saat Anda menambahkan library baru atau ingin menggunakan versi terbaru dari library yang ditentukan di Podfile Anda. Sangat berguna saat Anda melihat pesan error yang menunjukkan bahwa versi library yang diperlukan tidak tersedia.
pod install --repo-update

// Bersihkan cache pod.
// 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 library yang diperlukan berdasarkan status manifes dan file lock yang ada.
// 2. Biasanya, membersihkan cache bukan langkah rutin dan hanya diperlukan saat menghadapi masalah tertentu. Dalam kondisi normal, CocoaPods mengelola cache-nya dengan baik.
pod cache clean --all

Kode Anda atau kode pihak ketiga yang dirujuk melaporkan konflik simbol dengan AlivcFFmpeg saat integrasi

Solusi:

  • Jika terjadi konflik simbol dengan AlivcFFmpeg, hapus AlivcFFmpeg yang redundan dan pertahankan hanya satu. AlivcFFmpeg adalah ekstensi ffmpeg yang telah dikustomisasi dan sangat penting bagi ApsaraVideo Player SDK. Kami menyarankan Anda menghapus AlivcFFmpeg pihak ketiga dan mempertahankan yang berasal dari ApsaraVideo Player SDK untuk iOS. Perlu diperhatikan bahwa hal ini mungkin menyebabkan pemutar pihak ketiga tidak berfungsi dengan benar.

Error sandBox

  • Masalah:

    截屏2024-12-06 16

  • Solusi:

    Atur User Script SandBoxing di UserSetting menjadi NO.

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

Integrasi SDK video pendek

Jika Anda ingin mengintegrasikan ApsaraVideo Player SDK untuk iOS dan short video SDK ke dalam proyek Anda, kami menyarankan Anda menggunakan All-in-One SDK untuk iOS untuk integrasi tersebut. Jika tidak, masalah duplikasi kelas dapat terjadi dan menyebabkan kompilasi gagal.

Untuk informasi selengkapnya tentang masalah dan solusi yang mungkin terjadi saat menggunakan pemutar, lihat FAQ tentang ApsaraVideo Player.

Dokumentasi fitur

Fitur Dasar

Fitur Lanjutan