Iklan Banner

Iklan banner mengisi suatu tempat dalam tata letak aplikasi, baik di bagian atas atau bawah layar perangkat. Iklan tetap berada di layar saat pengguna berinteraksi dengan aplikasi, dan dapat otomatis dimuat ulang setelah jangka waktu tertentu. Jika periklanan seluler merupakan hal yang baru bagi Anda, iklan Banner adalah pilihan pertama yang baik. Studi kasus.

Prasyarat

  • Selesaikan Mulai.
  • (Khusus Android) Pemahaman terkait penggunaan referensi jobject JNI (lihat tips JNI Android).

Selalu uji dengan iklan percobaan

Saat membuat dan menguji aplikasi, pastikan Anda menggunakan iklan percobaan, bukan iklan produksi langsung. Jika Anda tidak melakukannya, akun Anda dapat ditangguhkan.

Cara termudah untuk memuat iklan pengujian adalah dengan menggunakan ID unit iklan pengujian khusus kami untuk banner, yang bervariasi per platform perangkat:

  • Android: ca-app-pub-3940256099942544/6300978111
  • iOS: ca-app-pub-3940256099942544/2934735716

ID unit iklan ini telah dikonfigurasi secara khusus guna menampilkan iklan pengujian untuk setiap permintaan, dan Anda bebas menggunakannya di aplikasi Anda sendiri saat melakukan coding, menguji, dan melakukan proses debug. Cukup pastikan Anda menggantinya dengan ID unit iklan Anda sendiri sebelum memublikasikan aplikasi.

Untuk informasi selengkapnya tentang cara kerja iklan percobaan Mobile Ads SDK, lihat Iklan Percobaan.

Penerapan

Mengonfigurasi AdView

Iklan banner ditampilkan dalam objek AdView, sehingga langkah pertama untuk mengintegrasikan iklan banner adalah membuat dan memosisikan AdView.

  1. Tambahkan header berikut ke kode C++ aplikasi Anda:

     #include "firebase/gma/ad_view.h"
    
  2. Deklarasikan dan buat instance objek AdView:

      firebase::gma::AdView* ad_view;
      ad_view = new firebase::gma::AdView();
    
  3. Buat AdSize dan lakukan inisialisasi tampilan iklan menggunakan tampilan induk AdParent. Tampilan induk adalah referensi jobject JNI ke Activity Android atau pointer ke transmisi UIView iOS ke jenis AdParent:

     // my_ad_parent is a jobject reference
     // to an Android Activity or a pointer to an iOS UIView.
     firebase::gma::AdParent ad_parent = static_cast(my_ad_parent);
     firebase::Future result =
       ad_view->Initialize(ad_parent, kBannerAdUnit, firebase::gma::AdSize::kBanner);
    
  4. Sebagai alternatif untuk mempertahankan masa depan sebagai variabel, Anda dapat memeriksa status operasi inisialisasi secara berkala dengan memanggil InitializeLastResult() pada objek AdView. Hal ini mungkin berguna untuk melacak proses inisialisasi dalam game loop global Anda.

      // Monitor the status of the future in your game loop:
      firebase::Future<void> result = ad_view->InitializeLastResult();
      if (result.status() == firebase::kFutureStatusComplete) {
        // Initialization completed.
        if(future.error() == firebase::gma::kAdErrorCodeNone) {
          // Initialization successful.
        } else {
          // An error has occurred.
        }
      } else {
        // Initialization on-going.
      }
    
  5. Untuk informasi selengkapnya tentang cara menggunakan firebase::Future, lihat Menggunakan Future untuk memantau status penyelesaian panggilan metode.

Menetapkan posisi iklan

Anda dapat menetapkan posisi AdView kapan saja setelah diinisialisasi:

firebase::Future<void> result = ad_view->SetPosition(firebase::gma::AdView::kPositionTop);

Memuat iklan

Anda dapat memuat iklan setelah AdView diinisialisasi:

firebase::gma::AdRequest ad_request;
firebase::Future<firebase::gma::AdResult> load_ad_result = ad_view->LoadAd(my_ad_request);

Objek AdRequest mewakili satu permintaan iklan dan berisi properti untuk informasi seperti penargetan.

Menampilkan iklan

Terakhir, tampilkan iklan di layar dengan memanggil Show(). Metode ini dapat dipanggil kapan saja setelah iklan diinisialisasi:

firebase::Future<void> result = ad_view->Show();

Peristiwa iklan

Google Mobile Ads C++ SDK menyediakan class AdListener yang dapat diperluas dan diteruskan ke AdView::SetListener() agar Anda diberi tahu mengenai perubahan status tampilan iklan.

Memperluas metode di AdListener bersifat opsional, sehingga Anda hanya perlu mengimplementasikan metode yang diinginkan. Berikut adalah contoh implementasi class yang memperluas semua class metode AdListener:

class ExampleAdListener
    : public firebase::gma::AdListener {
 public:
  ExampleAdListener() {}
  void OnAdClicked() override {
    // This method is invoked when the user clicks the ad.
  }

  void OnAdClosed() override {
   // This method is invoked when the user closes the ad.
  }

  void OnAdImpression() override {
    // This method is invoked when an impression is recorded for an ad.
  }

  void OnAdOpened() override {
    // This method is invoked when an ad opens an overlay that covers the screen.
  }
};

ExampleAdListener* ad_listener = new ExampleAdListener();
ad_view->SetAdListener(ad_listener);

Tabel di bawah mencantumkan ukuran banner standar.

Ukuran dalam poin (LxT) Deskripsi Ketersediaan Konstanta firebase::gma::AdSize
320x50 Banner Ponsel dan Tablet kBanner
320x100 Banner Besar Ponsel dan Tablet kLargeBanner
300x250 Persegi Panjang Sedang IAB Ponsel dan Tablet kMediumRectangle
468x60 Banner Ukuran Penuh IAB Tablet kFullBanner
728x90 Banner Utama IAB Tablet kLeaderboard
Lebar yang disediakan x Tinggi adaptif Banner adaptif Ponsel dan Tablet T/A

Ukuran iklan khusus

Untuk menentukan ukuran banner kustom, tetapkan dimensi yang diinginkan menggunakan konstruktor firebase::gma::AdSize dengan parameter lebar dan tinggi, seperti yang ditampilkan di sini:

firebase::gma::AdSize ad_size(/*width=*/320, /*height=*/50);

Referensi tambahan

Contoh di GitHub

Kisah sukses