Menyiapkan iklan banner

Tampilan banner adalah iklan teks atau gambar persegi panjang yang menempati tempat di layar. 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.

Panduan ini menunjukkan cara mengintegrasikan tampilan banner ke dalam aplikasi Unity. Selain cuplikan kode dan petunjuk, panduan ini juga menyertakan informasi tentang cara menentukan ukuran banner dengan benar dan link ke referensi tambahan.

Prasyarat

Sebelum melanjutkan, siapkan Google Mobile Ads Unity Plugin.

Selalu melakukan pengujian dengan iklan percobaan

Kode contoh berikut berisi ID unit iklan yang dapat Anda gunakan untuk meminta iklan pengujian. Iklan ini telah dikonfigurasi secara khusus agar menampilkan iklan percobaan, bukan iklan produksi untuk setiap permintaan, sehingga aman digunakan.

Namun, setelah Anda mendaftarkan aplikasi di antarmuka web Ad Manager dan membuat ID unit iklan Anda sendiri untuk digunakan di aplikasi, konfigurasikan perangkat Anda sebagai perangkat pengujian secara eksplisit selama pengembangan.

/21775744923/example/interstitial

Melakukan inisialisasi Google Mobile Ads Unity Plugin

Sebelum memuat iklan, minta aplikasi Anda melakukan inisialisasi Google Mobile Ads Unity Plugin dengan memanggil MobileAds.Initialize(). Hal ini hanya perlu dilakukan sekali, idealnya saat peluncuran aplikasi.

using GoogleMobileAds;
using GoogleMobileAds.Api;

public class GoogleMobileAdsDemoScript : MonoBehaviour
{
    public void Start()
    {
        // Initialize Google Mobile Ads Unity Plugin.
        MobileAds.Initialize((InitializationStatus initStatus) =>
        {
            // This callback is called once the MobileAds SDK is initialized.
        });
    }
}

Jika Anda menggunakan mediasi, tunggu hingga callback terjadi sebelum memuat iklan karena hal ini akan memastikan bahwa semua adaptor mediasi diinisialisasi.

Contoh BannerView

Kode contoh berikut menjelaskan cara menggunakan tampilan banner. Dalam contoh ini, buat instance tampilan banner, gunakan AdManagerAdRequest untuk memuat iklan ke tampilan banner, lalu perluas kemampuannya dengan menangani peristiwa siklus proses.

Membuat tampilan banner

Langkah pertama dalam menggunakan tampilan banner adalah membuat instance tampilan banner.

// Create a 320x50 banner at top of the screen.
adManagerBannerView = new AdManagerBannerView("AD_UNIT_ID", AdSize.Banner, AdPosition.Top);

Ganti AD_UNIT_ID dengan ID unit iklan Anda.

Konstruktor untuk AdManagerBannerView memiliki parameter berikut:

  • adUnitId: ID unit iklan untuk iklan banner yang akan dimuat.
  • AdSize: Ukuran banner yang ingin Anda gunakan.
  • AdPosition: Posisi tempat tampilan banner harus ditempatkan.

(Opsional) Membuat tampilan banner dengan posisi kustom

Untuk kontrol yang lebih besar atas penempatan tampilan banner di layar daripada yang ditawarkan oleh nilai AdPosition, gunakan konstruktor yang memiliki koordinat x dan y sebagai parameter:

// Create a 320x50 banner views at coordinate (0,50) on screen.
adManagerBannerView = new AdManagerBannerView("AD_UNIT_ID", AdSize.Banner, 0, 50);

Sudut kiri atas tampilan banner diposisikan pada nilai x dan y yang diteruskan ke konstruktor, dengan titik asal adalah kiri atas layar.

(Opsional) Membuat tampilan banner dengan ukuran kustom

Selain menggunakan konstanta AdSize, Anda juga dapat menentukan ukuran kustom untuk iklan:

// Create a 250x250 banner at the bottom of the screen.
AdSize adSize = new AdSize(250, 250);
adManagerBannerView = new AdManagerBannerView("AD_UNIT_ID", adSize, AdPosition.Bottom);

(Opsional) Beberapa ukuran iklan

Ad Manager memungkinkan Anda menentukan beberapa ukuran iklan yang dapat memenuhi syarat untuk ditayangkan di AdManagerBannerView. Sebelum menerapkan fitur ini di SDK, buat item baris yang menargetkan unit iklan yang sama yang terkait dengan materi iklan dengan ukuran berbeda.

Di aplikasi Anda, teruskan beberapa parameter AdSize ke ValidAdSizes:

// Create a 250x250 banner at the bottom of the screen.
adManagerBannerView = new AdManagerBannerView("AD_UNIT_ID", AdSize.Banner, AdPosition.Top);

// Add multiple ad sizes.
adManagerBannerView.ValidAdSizes = new List<AdSize>
{
    AdSize.Banner,
    new AdSize(120, 20),
    new AdSize(250, 250),
};

Jika AdManagerAdView berubah ukuran pada waktu muat ulang, tata letak Anda harus dapat otomatis beradaptasi dengan ukuran baru. AdManagerAdView ditetapkan secara default ke ukuran yang diteruskan dalam parameter pertama hingga iklan berikutnya ditampilkan.

Memuat iklan banner

Setelah AdManagerBannerView diterapkan, lanjutkan untuk memuat iklan dengan metode LoadAd() di class AdManagerBannerView. Metode ini menggunakan parameter yang menyimpan informasi runtime, seperti info penargetan, label pengecualian, dan ID yang diberikan penayang.

Untuk memuat iklan, buat AdManagerAdRequest dan teruskan ke metode LoadAd().

// Send a request to load an ad into the banner view.
adManagerBannerView.LoadAd(new AdManagerAdRequest());

Memproses peristiwa tampilan banner

Untuk menyesuaikan perilaku iklan, Anda dapat mengaitkan ke sejumlah peristiwa dalam siklus proses iklan, seperti pemuatan, pembukaan, atau penutupan. Untuk memproses peristiwa ini, daftarkan delegasi:

adManagerBannerView.OnBannerAdLoaded += () =>
{
    // Raised when an ad is loaded into the banner view.
};
adManagerBannerView.OnBannerAdLoadFailed += (LoadAdError error) =>
{
    // Raised when an ad fails to load into the banner view.
};
adManagerBannerView.OnAdPaid += (AdValue adValue) =>
{
    // Raised when the ad is estimated to have earned money.
};
adManagerBannerView.OnAdImpressionRecorded += () =>
{
    // Raised when an impression is recorded for an ad.
};
adManagerBannerView.OnAdClicked += () =>
{
    // Raised when a click is recorded for an ad.
};
adManagerBannerView.OnAdFullScreenContentOpened += () =>
{
    // Raised when an ad opened full screen content.
};
adManagerBannerView.OnAdFullScreenContentClosed += () =>
{
    // Raised when the ad closed full screen content.
};

Menghancurkan tampilan banner

Untuk menghancurkan banner, panggil metode Destroy() untuk merilis resource:

if (adManagerBannerView != null)
{
    // Always destroy the banner view when no longer needed.
    adManagerBannerView.Destroy();
    adManagerBannerView = null;
}

Untuk banner yang gagal dimuat, sebaiknya muat ulang banner, bukan menghancurkan dan membuat yang baru. Untuk mengetahui detailnya, lihat Memuat ulang iklan.

Memuat ulang iklan

Jika Anda mengonfigurasi unit iklan untuk dimuat ulang, Anda tidak perlu meminta iklan lain saat iklan gagal dimuat. Google Mobile Ads Unity Plugin mematuhi kecepatan refresh apa pun yang Anda tentukan di UI Ad Manager. Jika Anda belum mengaktifkan refresh, ajukan permintaan baru. Untuk mengetahui detail selengkapnya tentang refresh unit iklan, seperti menetapkan kecepatan refresh, lihat Kecepatan refresh untuk iklan di aplikasi seluler.

Banner adaptif besar menyediakan format yang lebih besar yang dirancang untuk tata letak yang tidak dapat di-scroll. Dibandingkan dengan banner adaptif anchor standar, banner ini memungkinkan tinggi maksimum yang lebih tinggi (hingga 20% dari tinggi layar, antara 50 dan 150 dp). Ruang yang lebih besar ini dioptimalkan untuk konten video.

Tabel berikut mencantumkan ukuran banner standar:

Ukuran dalam dp (LxT) Deskripsi Ketersediaan Konstanta AdSize
320x50 Spanduk Standar Ponsel dan Tablet BANNER
320x100 Banner Besar Ponsel dan Tablet LARGE_BANNER
300x250 Persegi Panjang Sedang IAB Ponsel dan Tablet MEDIUM_RECTANGLE
468x60 Banner Ukuran Penuh IAB Tablet FULL_BANNER
728x90 Leaderboard IAB Tablet LEADERBOARD
Lebar yang diberikan x Tinggi adaptif Banner adaptif Ponsel dan Tablet T/A
Lebar layar x 32|50|90 Banner cerdas Ponsel dan Tablet SMART_BANNER
Pelajari lebih lanjut Banner Adaptif, yang dimaksudkan untuk menggantikan Banner Cerdas.

Peristiwa di aplikasi

Peristiwa aplikasi memungkinkan Anda membuat iklan yang dapat mengirim pesan ke kode aplikasi. Aplikasi kemudian dapat mengambil tindakan berdasarkan pesan ini.

Anda dapat memproses peristiwa aplikasi khusus Ad Manager menggunakan AppEvent. Peristiwa ini dapat terjadi kapan saja selama siklus proses iklan, bahkan sebelum pemuatan dipanggil.

OnAppEventReceived dimunculkan saat peristiwa aplikasi terjadi di iklan. Berikut adalah contoh cara menangani peristiwa ini dalam kode Anda:

adManagerBannerView.OnAppEventReceived += (AppEvent args) =>
{
    Debug.Log($"Received app event from the ad: {args.Name}, {args.Data}.");
};

Berikut adalah contoh yang menunjukkan cara mengubah warna latar belakang aplikasi Anda bergantung pada peristiwa aplikasi dengan nama warna:

adManagerBannerView.OnAppEventReceived += (AppEvent args) =>
{
    if (args.Name == "color")
    {
        Color color;
        if (ColorUtility.TryParseHtmlString(args.Data, out color))
        {
            renderer.material.color = color;
        }
    }
};

Berikut adalah materi iklan terkait yang mengirim peristiwa aplikasi warna:

<html>
<head>
  <script src="//www.gstatic.com/afma/api/v1/google_mobile_app_ads.js"></script>
  <script>
    document.addEventListener("DOMContentLoaded", function() {
      // Send a color=green event when ad loads.
      admob.events.dispatchAppEvent("color", "green");

      document.getElementById("ad").addEventListener("click", function() {
        // Send a color=blue event when ad is clicked.
        admob.events.dispatchAppEvent("color", "blue");
      });
    });
  </script>
  <style>
    #ad {
      width: 320px;
      height: 50px;
      top: 0;
      left: 0;
      font-size: 24pt;
      font-weight: bold;
      position: absolute;
      background: black;
      color: white;
      text-align: center;
    }
  </style>
</head>
<body>
  <div id="ad">Carpe diem!</div>
</body>
</html>

Referensi lainnya