Iklan banner mengisi suatu tempat dalam tata letak aplikasi, baik di bagian atas maupun bawah layar perangkat. Iklan ini tetap berada di layar saat pengguna berinteraksi dengan aplikasi, dan dapat dimuat ulang secara otomatis setelah jangka waktu tertentu. Jika periklanan seluler merupakan hal yang baru bagi Anda, iklan Banner adalah pilihan pertama yang baik. Studi kasus.
Panduan ini menunjukkan cara mengintegrasikan iklan banner dari AdMob ke dalam aplikasi Android. Selain petunjuk dan cuplikan kode, panduan ini juga menyertakan informasi tentang mengubah ukuran banner dengan benar dan menautkan ke referensi tambahan.
Prasyarat
- Selesaikan Panduan memulai.
Menambahkan AdView ke tata letak
Langkah pertama untuk menampilkan banner adalah menempatkan
AdView
dalam tata letak untuk Activity
atau Fragment
tempat Anda ingin menampilkannya. Cara termudah untuk melakukannya adalah dengan menambahkannya ke file tata letak XML yang sesuai. Berikut adalah contoh yang menampilkan AdView
aktivitas:
# main_activity.xml ... <com.google.android.gms.ads.AdView xmlns:ads="http://schemas.android.com/apk/res-auto" android:id="@+id/adView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_alignParentBottom="true" ads:adSize="BANNER" ads:adUnitId="ca-app-pub-3940256099942544/6300978111"> </com.google.android.gms.ads.AdView> ...
Perhatikan atribut yang diperlukan berikut:
ads:adSize
- Tetapkan ke ukuran iklan yang ingin Anda gunakan. Jika tidak ingin menggunakan ukuran standar yang ditentukan oleh konstanta, Anda dapat menyetel ukuran kustom. Lihat bagian ukuran banner di bawah untuk mengetahui detailnya.ads:adUnitId
- Tetapkan ID ini ke ID unik yang diberikan ke unit iklan di aplikasi Anda tempat iklan akan ditampilkan. Jika Anda menampilkan iklan banner dalam berbagai aktivitas, masing-masing akan memerlukan unit iklan.
Sebagai alternatif, Anda dapat membuat AdView
secara terprogram:
Java
AdView adView = new AdView(this); adView.setAdSize(AdSize.BANNER); adView.setAdUnitId("ca-app-pub-3940256099942544/6300978111"); // TODO: Add adView to your view hierarchy.
Kotlin
val adView = AdView(this) adView.adSize = AdSize.BANNER adView.adUnitId = "ca-app-pub-3940256099942544/6300978111" // TODO: Add adView to your view hierarchy.
Selalu uji dengan iklan percobaan
Saat membuat dan menguji aplikasi, pastikan Anda menggunakan iklan pengujian, bukan iklan produksi aktif. Jika Anda tidak melakukannya, akun Anda dapat ditangguhkan.
Cara termudah untuk memuat iklan pengujian adalah menggunakan ID unit iklan pengujian khusus kami untuk banner Android:
ca-app-pub-3940256099942544/6300978111
Konfigurasi ini telah dikonfigurasi secara khusus untuk menampilkan iklan pengujian untuk setiap permintaan, dan Anda bebas untuk menggunakannya di aplikasi Anda sendiri saat melakukan coding, menguji, dan men-debug. Cukup pastikan Anda menggantinya dengan ID unit iklan Anda sendiri sebelum memublikasikan aplikasi.
Untuk informasi lebih lanjut tentang cara kerja iklan uji coba Mobile Ads SDK, lihat Iklan Pengujian.
Memuat iklan
Setelah AdView tempatnya, langkah berikutnya adalah
memuat iklan. Hal itu dilakukan dengan metode
loadAd()
di class AdView
. Dibutuhkan
parameter AdRequest
, yang menyimpan informasi runtime (seperti info penargetan) tentang
satu permintaan iklan.
Berikut adalah contoh yang menunjukkan cara memuat iklan dalam metode onCreate()
Activity
:
MainActivity (kutipan)
Java
package ... import ... import com.google.android.gms.ads.AdRequest; import com.google.android.gms.ads.AdView; public class MainActivity extends AppCompatActivity { private AdView mAdView; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); MobileAds.initialize(this, new OnInitializationCompleteListener() { @Override public void onInitializationComplete(InitializationStatus initializationStatus) { } }); mAdView = findViewById(R.id.adView); AdRequest adRequest = new AdRequest.Builder().build(); mAdView.loadAd(adRequest); } }
Kotlin
package ... import ... import com.google.android.gms.ads.AdRequest import com.google.android.gms.ads.AdView class MainActivity : AppCompatActivity() { lateinit var mAdView : AdView override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) MobileAds.initialize(this) {} mAdView = findViewById(R.id.adView) val adRequest = AdRequest.Builder().build() mAdView.loadAd(adRequest) } }
Selesai. Aplikasi Anda kini siap menampilkan iklan banner.
Peristiwa iklan
Untuk menyesuaikan perilaku iklan lebih lanjut, Anda dapat menerapkan sejumlah peristiwa dalam siklus proses iklan: memuat, membuka, menutup, dan sebagainya. Anda dapat
memproses peristiwa ini melalui
class
AdListener
.
Untuk menggunakan
AdListener
dengan
AdView
,
panggil
metode
setAdListener()
:
Java
mAdView.setAdListener(new AdListener() { @Override public void onAdClicked() { // Code to be executed when the user clicks on an ad. } @Override public void onAdClosed() { // Code to be executed when the user is about to return // to the app after tapping on an ad. } @Override public void onAdFailedToLoad(LoadAdError adError) { // Code to be executed when an ad request fails. } @Override public void onAdImpression() { // Code to be executed when an impression is recorded // for an ad. } @Override public void onAdLoaded() { // Code to be executed when an ad finishes loading. } @Override public void onAdOpened() { // Code to be executed when an ad opens an overlay that // covers the screen. } });
Kotlin
mAdView.adListener = object: AdListener() { override fun onAdClicked() { // Code to be executed when the user clicks on an ad. } override fun onAdClosed() { // Code to be executed when the user is about to return // to the app after tapping on an ad. } override fun onAdFailedToLoad(adError : LoadAdError) { // Code to be executed when an ad request fails. } override fun onAdImpression() { // Code to be executed when an impression is recorded // for an ad. } override fun onAdLoaded() { // Code to be executed when an ad finishes loading. } override fun onAdOpened() { // Code to be executed when an ad opens an overlay that // covers the screen. } }
Setiap metode yang dapat diganti di
AdListener
terkait dengan peristiwa dalam siklus proses iklan.
Metode yang dapat diganti | |
---|---|
onAdClicked()
|
Metode onAdClicked()
dipanggil saat klik dicatat untuk iklan.
|
onAdClosed()
|
Metode onAdClosed()
dipanggil saat pengguna kembali ke aplikasi setelah melihat URL tujuan iklan.
Aplikasi Anda dapat menggunakannya untuk melanjutkan aktivitas yang ditangguhkan atau
melakukan pekerjaan lain yang diperlukan untuk menyiapkan diri agar dapat berinteraksi.
Lihat
contoh AdListener
AdMob untuk implementasi metode pemroses
iklan di aplikasi Demo Android API.
|
onAdFailedToLoad()
|
Metode onAdFailedToLoad()
adalah satu-satunya yang menyertakan parameter. Parameter error dari jenis
LoadAdError menjelaskan error yang terjadi. Untuk informasi
selengkapnya, lihat dokumentasi
Proses Debug Error Pemuatan Iklan.
|
onAdImpression()
|
Metode onAdImpression()
dipanggil saat tayangan dicatat untuk iklan.
|
onAdLoaded()
|
Metode onAdLoaded()
dijalankan saat iklan telah selesai dimuat. Jika ingin menunda penambahan
AdView
ke aktivitas atau fragmen Anda sampai Anda yakin bahwa iklan akan dimuat, misalnya, Anda dapat melakukannya di sini.
|
onAdOpened()
|
Metode onAdOpened()
dipanggil saat iklan membuka overlay yang menutupi layar.
|
Ukuran spanduk
Tabel di bawah mencantumkan ukuran banner standar.
Ukuran dalam dp (LxT) | Deskripsi | Ketersediaan | Konstanta AdSize |
---|---|---|---|
320x50 | Banner | Ponsel dan Tablet | BANNER |
320x100 | Banner Besar | Ponsel dan Tablet | LARGE_BANNER |
300x250 | Persegi Panjang IAB | Ponsel dan Tablet | MEDIUM_RECTANGLE |
468x60 | Banner Ukuran Penuh IAB | Tablet | FULL_BANNER |
728x90 | Papan Peringkat IAB | Tablet | LEADERBOARD |
Lebar yang disediakan x Tinggi adaptif | Banner adaptif | Ponsel dan Tablet | T/A |
Lebar layar x 32|50|90 | Banner cerdas | Ponsel dan Tablet | SMART_BANNER |
Pelajari Banner Adaptif lebih lanjut, yang dimaksudkan untuk menggantikan Smart Banner. |
Untuk menentukan ukuran banner kustom, tetapkan
AdSize
yang diinginkan, seperti yang ditunjukkan di sini:
Java
AdSize adSize = new AdSize(300, 50);
Kotlin
val adSize = AdSize(300, 50)
Akselerasi hardware untuk iklan video
Agar iklan video berhasil ditampilkan dalam tampilan iklan banner, akselerasi hardware harus diaktifkan.
Akselerasi hardware diaktifkan secara default, tetapi beberapa aplikasi dapat memilih untuk menonaktifkannya. Jika ini berlaku untuk aplikasi Anda, sebaiknya aktifkan akselerasi hardware untuk class Activity yang menggunakan iklan.
Mengaktifkan akselerasi hardware
Jika aplikasi Anda tidak berperilaku sebagaimana mestinya saat akselerasi hardware diaktifkan
secara global, Anda juga dapat mengontrolnya untuk aktivitas tertentu. Untuk mengaktifkan atau
menonaktifkan akselerasi hardware, Anda dapat menggunakan atribut android:hardwareAccelerated
untuk elemen
<application>
dan
<activity>
di AndroidManifest.xml
Anda. Contoh berikut mengaktifkan akselerasi hardware
untuk seluruh aplikasi, tetapi menonaktifkannya untuk satu aktivitas:
<application android:hardwareAccelerated="true">
<!-- For activities that use ads, hardwareAcceleration should be true. -->
<activity android:hardwareAccelerated="true" />
<!-- For activities that don't use ads, hardwareAcceleration can be false. -->
<activity android:hardwareAccelerated="false" />
</application>
Lihat panduan akselerasi HW untuk informasi selengkapnya tentang opsi untuk mengontrol akselerasi hardware. Perhatikan bahwa tampilan iklan tunggal tidak dapat diaktifkan dengan akselerasi hardware jika Aktivitas dinonaktifkan, sehingga Aktivitas itu sendiri harus mengaktifkan akselerasi hardware.
Referensi lainnya
Contoh di GitHub
Aplikasi contoh Banner RecyclerView: Java
Tutorial video Garasi Iklan Seluler
Kisah sukses
Langkah berikutnya
Pelajari privasi pengguna lebih lanjut.