IMA SDK mempermudah integrasi iklan multimedia ke dalam situs dan aplikasi Anda. IMA SDK dapat meminta iklan dari server iklan yang kompatibel dengan VAST dan mengelola pemutaran iklan di aplikasi Anda. Dengan IMA DAI SDK, aplikasi membuat permintaan streaming untuk video iklan dan konten—baik konten VOD maupun live. Kemudian, SDK akan menampilkan streaming video gabungan, sehingga Anda tidak perlu mengelola peralihan antara video iklan dan konten dalam aplikasi Anda.
Pilih solusi DAI yang Anda minati
DAI layanan lengkap
Panduan ini menunjukkan cara mengintegrasikan IMA DAI SDK ke dalam aplikasi pemutar video sederhana. Jika Anda ingin melihat atau mengikuti contoh integrasi yang telah selesai, download BasicExample dari GitHub.
Ringkasan IMA DAI
Penerapan DAI IMA melibatkan empat komponen SDK utama seperti yang ditunjukkan dalam panduan ini:
StreamDisplayContainer
: Objek penampung yang berada di atas elemen pemutaran video dan menampung elemen UI iklan.AdsLoader
: Objek yang meminta streaming dan menangani peristiwa yang dipicu oleh objek respons permintaan streaming. Anda hanya boleh membuat instance satu pemuat iklan, yang dapat digunakan kembali selama masa aktif aplikasi.StreamRequest
: Objek yang menentukan permintaan streaming. Permintaan streaming dapat berupa video-on-demand atau live stream. Permintaan live stream menentukan kunci aset, sedangkan permintaan VOD menentukan ID CMS dan ID video. Kedua jenis permintaan dapat secara opsional menyertakan kunci API yang diperlukan untuk mengakses streaming tertentu, dan kode jaringan Google Ad Manager agar IMA SDK menangani ID iklan seperti yang ditentukan dalam setelan Google Ad Manager.StreamManager
: Objek yang menangani streaming penyisipan iklan dinamis dan interaksi dengan backend DAI. Pengelola streaming juga menangani pelacakan ping dan meneruskan peristiwa streaming dan iklan ke penayang.
Prasyarat
- Android Studio
- Contoh aplikasi pemutar video untuk integrasi SDK
Mendownload dan menjalankan aplikasi pemutar video contoh
Aplikasi contoh menyediakan pemutar video berfungsi yang memutar video HLS. Gunakan ini sebagai titik awal untuk mengintegrasikan kemampuan DAI IMA DAI SDK.
Download aplikasi pemutar video contoh dan ekstrak aplikasi.
Mulai Android Studio dan pilih Open an existing Android Studio project, atau jika Android Studio sudah berjalan, pilih File > New > Import Project. Kemudian pilih
SampleVideoPlayer/build.gradle
.Jalankan sinkronisasi Gradle dengan memilih Tools > Android > Sync Project with Gradle Files.
Pastikan aplikasi pemutar dikompilasi dan berjalan di perangkat Android fisik atau Perangkat Virtual Android menggunakan Run > Run 'app'. Wajar jika streaming video membutuhkan waktu beberapa saat untuk dimuat sebelum diputar.
Periksa pemutar video contoh
Pemutar video contoh belum berisi kode integrasi IMA DAI SDK. Aplikasi contoh terdiri dari dua bagian utama:
samplevideoplayer/SampleVideoPlayer.java
: Pemutar HLS berbasis ExoPlayer yang berfungsi sebagai dasar untuk integrasi DAI IMA.videoplayerapp/MyActivity.java
: Aktivitas ini membuat pemutar video dan meneruskanContext
danmedia3.ui.PlayerView
.
Menambahkan IMA DAI SDK ke aplikasi pemutar
Anda juga harus menyertakan referensi ke IMA DAI SDK. Di Android Studio, tambahkan kode berikut ke file build.gradle tingkat aplikasi Anda, yang terletak di app/build.gradle. IMA SDK memerlukan pengoptimalan library diaktifkan, yang harus Anda lakukan dengan menetapkan coreLibraryDesugaringEnabled true
dan menambahkan coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.1.5'
sebagai dependensi dalam file build.gradle. Untuk mengetahui detail selengkapnya, lihat
API Java 11+ yang tersedia melalui desugaring dengan spesifikasi nio.
Mengintegrasikan IMA DAI SDK
Buat class baru bernama
SampleAdsWrapper
dalam paketvideoplayerapp
(diapp/java/com.google.ads.interactivemedia.v3.samples/videoplayerapp/
) untuk membungkusSampleVideoPlayer
yang ada dan menambahkan logika yang menerapkan IMA DAI. Untuk melakukannya, Anda harus membuatAdsLoader
terlebih dahulu yang digunakan untuk meminta streaming DAI.Cuplikan ini mencakup contoh parameter untuk streaming HLS dan DASH, live dan VOD. Untuk menyetel streaming yang sedang diputar, perbarui variabel
CONTENT_TYPE
.Buat metode bantuan
createSampleVideoPlayerCallback()
untuk menangani pembuatan instance antarmukaSampleVideoPlayerCallback
yang memperluasVideoStreamPlayer.VideoStreamPlayerCallback
.Untuk bekerja dengan DAI, pemutar harus meneruskan peristiwa ID3 ke IMA DAI SDK. Metode
callback.onUserTextReceived()
melakukan hal ini, dalam contoh kode berikut.Tambahkan metode
buildStreamRequest()
untuk membuatSteamRequest
. Metode ini beralih di antara berbagai aliran berdasarkan cara Anda menetapkan variabelCONTENT_TYPE
. Streaming default yang digunakan dalam panduan ini adalah streaming HLS VOD contoh IMA.Anda juga memerlukan
VideoStreamPlayer
untuk memutar streaming, jadi tambahkan metodecreateVideoStreamPlayer()
, yang membuat class anonim yang mengimplementasikanVideoStreamPlayer
.Terapkan pemroses yang diperlukan dan tambahkan dukungan untuk penanganan error.
Perhatikan penerapan
AdErrorListener
, karena penerapan ini memanggil URL penggantian jika iklan gagal diputar. Karena konten dan iklan berada dalam satu streaming, Anda harus siap memanggil streaming pengganti jika streaming DAI mengalami error.Tambahkan kode untuk logging.
Ubah
MyActivity
divideoplayerapp
untuk membuat instance dan memanggilSampleAdsWrapper
. Selain itu, buat panggilan keImaSdkFactory.initialize()
di sini menggunakan metode helper untuk membuat instanceImaSdkSettings
.Tambahkan metode bantuan
getImaSdkSettings()
untuk membuat instanceImaSdkSettings
.Ubah file tata letak Aktivitas
activity_my.xml
untuk menambahkan elemen UI untuk pencatatan.
Selamat! Sekarang Anda meminta dan menampilkan iklan video di aplikasi Android. Untuk menyempurnakan penerapan, lihat Bookmark, Snapback, dan dokumentasi API.
Pemecahan masalah
Jika Anda mengalami masalah saat memutar iklan video, coba download BasicExample yang telah selesai. Jika berfungsi dengan baik di BasicExample, kemungkinan ada masalah pada kode integrasi IMA aplikasi Anda.
Jika Anda masih mengalami masalah, buka forum IMA SDK.