Topik ini menjelaskan cara mengintegrasikan ApsaraVideo Player SDK untuk iOS dengan cepat.
Persyaratan
Sistem operasi: iOS 8.0 atau yang lebih baru.
Alat pengembangan: Disarankan menggunakan Xcode. Prosedur dalam topik ini berbasis Xcode. Unduh di: Xcode.
ApsaraVideo Player SDK untuk iOS tidak mendukung simulator. Anda harus menjalankan aplikasi pada perangkat fisik.
Prasyarat
Anda telah memperoleh file lisensi yang mencakup otorisasi pemutar, seperti
AliVideoCert-********.crt. Untuk informasi selengkapnya, lihat Memperoleh lisensi.Untuk integrasi manual, unduh paket ApsaraVideo Player SDK untuk iOS. Kami menyarankan Anda mengunduh versi terbaru.
Catatan penggunaan
Saat membuat paket aplikasi, file dSYM digunakan untuk mensimbolisasi laporan crash.
Saat menggunakan ApsaraVideo Player SDK untuk iOS, framework AlivcFFmpeg dan AliyunPlayer diperlukan. File header pemutar berada dalam framework AliyunPlayer.
Jika Anda mengintegrasikan SDK pemutar dan SDK video pendek secara bersamaan, pastikan kompatibilitas versi antara SDK video pendek, SDK pemutar, dan AlivcFFmpeg. Ketidaksesuaian versi dapat menyebabkan fitur gagal berfungsi. Untuk informasi selengkapnya, lihat dependensi AlivcFFmpeg.
Paket instalasi ApsaraVideo Player SDK untuk iOS mencakup arsitektur simulator. Anda harus menghapus arsitektur tersebut sebelum mengirimkan aplikasi ke App Store agar tidak ditolak.
Langkah 1: Integrasikan SDK
Integrasi CocoaPods
Instal CocoaPods. Ini memerlukan lingkungan Ruby.
// Di Terminal, jalankan perintah berikut: sudo gem install cocoapodsVerifikasi instalasi CocoaPods.
Setelah instalasi, jalankan
pod --versiondi terminal untuk memverifikasi instalasi.xxx@ ~ % pod --version 1.16.2Buat Podfile.
Di terminal Anda, navigasi ke direktori proyek dan jalankan
pod inituntuk membuat Podfile.// Buka direktori proyek Anda. xxx@ ~ % cd /path/yourProject // Hasilkan Podfile. xxx@ yourProject % pod initEdit Podfile untuk menambahkan dependensi SDK pemutar.
CatatanUntuk mengintegrasikan SDK pemutar dan SDK video pendek secara bersamaan, ganti
AliPlayerSDK_iOSdalam kode berikut denganAliPlayerPartSDK_iOS.AliPlayerPartSDK_iOStidak menyertakan FFmpeg, sehingga mencegah konflik dengan FFmpeg dalam SDK video pendek.Masukkan nomor versi yang benar untuk SDK pemutar. Jika tidak, impor akan gagal dan menampilkan error. Untuk versi SDK pemutar, lihat Catatan Rilis ApsaraVideo Player SDK untuk iOS.
source 'https://github.com/CocoaPods/Specs.git' platform:ios, '8.0' target 'yourProject' do # SDK Pemutar. Kami menyarankan Anda menggunakan versi terbaru. pod 'AliPlayerSDK_iOS' end(Opsional) Tambahkan dependensi pada versi tertentu dari SDK pemutar.
source 'https://github.com/CocoaPods/Specs.git' platform:ios, '8.0' player_sdk_version = '7.15.0' target 'yourProject' do # SDK Pemutar. Kami menyarankan Anda menggunakan versi terbaru. pod 'AliPlayerSDK_iOS' , player_sdk_version endInstal dependensi.
Jalankan perintah berikut untuk menginstal dependensi.
pod installContoh output berikut menunjukkan instalasi berhasil.
xxx@ yourProject % pod install Analyzing dependencies Downloading dependencies Installing AliPlayerSDK_iOS (7.15.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 SDK pemutar.
pod update AliPlayerSDK_iOS
Integrasi manual
Jika Anda mengintegrasikan SDK pemutar dan SDK video pendek secara bersamaan, impor hanya satu framework AlivcFFmpeg dan pastikan Anda menggunakan versi yang benar.
Tambahkan framework pemutar ke Frameworks, Libraries, and Embedded Content, lalu atur Embed menjadi Embed & Sign.
alivcffmpeg.framework: Framework dasar untuk pemutar.
AliyunMediaDownloader.framework: Digunakan untuk unduhan offline.
AliyunPlayer.framework: Framework pemutar.

Klik tab Build Settings.
Di bagian Search Paths, atur Framework Search Paths ke direktori framework lokal Anda.
(Opsional) Integrasi RTS (CocoaPods)
Untuk mengintegrasikan komponen Real-Time Streaming (RTS), lihat Implementasikan penarikan aliran berbasis RTS di iOS.
Langkah 2: Konfigurasikan lisensi
Saat menggunakan pemutar di wilayah luar Tiongkok daratan, Hong Kong, dan Makau (situs internasional), Anda harus memanggil API berikut untuk mengatur lingkungan sebelum memanggil API pemutar lainnya.
Metode 1: Panggil API berikut untuk memperbarui konfigurasi default ke lingkungan situs internasional.
// Untuk situs internasional, Anda harus memanggil API ini sebelum API pemutar lainnya // untuk mengatur lingkungan. Pengaturan ini tidak dapat diubah saat runtime. AlivcBase.EnvironmentManager.globalEnvironment = ENV_SEA;Metode 2 (Disarankan): Untuk versi SDK pemutar 7.6.0 dan yang lebih baru, Anda dapat mengonfigurasi lingkungan situs internasional dalam file
Info.plist.Buka file
Info.plistdan ubah nilaiAlivcEnvmenjadiSEA.// Konfigurasikan lingkungan saat ini sebagai situs internasional. <key>AlivcEnv</key> <string>SEA</string>Gambar berikut menunjukkan contoh konfigurasi:

Untuk mengonfigurasi lisensi pada klien iOS Anda, lihat Konfigurasikan lisensi di iOS.
Langkah 3: Aktifkan logging (Opsional)
Aktifkan logging untuk membantu mengidentifikasi dan menangani masalah. Untuk petunjuk cara memperoleh log, lihat Memperoleh log SDK.
// Aktifkan logging.
[AliPlayer setEnableLog:YES];
// Atur tingkat log. Nilai default adalah LOG_LEVEL_INFO. Untuk troubleshooting, atur ke LOG_LEVEL_TRACE.
[AliPlayer setLogCallbackInfo:LOG_LEVEL_INFO callbackBlock:nil];Struktur proyek
Framework | Deskripsi |
alivcffmpeg.framework | Framework dasar untuk pemutar. Wajib. |
AliyunMediaDownloader.framework | Digunakan untuk unduhan offline. Opsional. |
AliyunPlayer.framework | Framework pemutar. Wajib. |
artcSource.framework | Mendukung protokol ARTC. Opsional. Catatan Untuk mendukung protokol ARTC, Anda juga harus menambahkan RtsSDK.framework. Untuk detail integrasi, lihat Implementasikan penarikan aliran berbasis RTS di iOS. |
aemFilter.framework | Mengaktifkan peningkatan audio. Opsional. |
libPluginSR.framework | Mengaktifkan super-resolusi. Opsional. |
normalsrFilter.framework | Mengaktifkan super-resolusi. Opsional. |
srFilter.framework | Mengaktifkan super-resolusi. Opsional. |
vfiFilter.framework | Mengaktifkan penyisipan frame video. Opsional. |
vvcCodecPlugin.framework | Plugin decoding H.266. Opsional. |
FAQ
Menggunakan CocoaPods
Konflik simbol dengan AlivcFFmpeg
Solusi:
Jika Anda mengalami konflik simbol dengan AlivcFFmpeg, hapus dependensi yang berlebihan dan sisakan hanya satu. Kami menyarankan mempertahankan versi yang disediakan bersama ApsaraVideo Player SDK untuk iOS serta menghapus versi pihak ketiga. Perhatikan bahwa hal ini mungkin memengaruhi fungsionalitas pemutar pihak ketiga.
Galat Sandbox
Masalah:

Solusi:
Di UserSettings, atur User Script Sandboxing menjadi NO.

Integrasi SDK video pendek
Untuk mengintegrasikan ApsaraVideo Player SDK untuk iOS dan SDK video pendek secara bersamaan, gunakan SDK all-in-one untuk iOS guna menghindari masalah duplikasi kelas dan kegagalan kompilasi.
Untuk masalah dan solusi pemutar lainnya, lihat FAQ tentang ApsaraVideo Player.