Iklan Banner

Iklan banner mengisi suatu tempat dalam tata letak aplikasi, baik di atas ataupun di bawah layar perangkat. Iklan banner tetap muncul di layar saat pengguna berinteraksi dengan aplikasi, dan dapat dimuat ulang secara otomatis setelah jangka waktu tertentu. Jika Anda baru menggunakan iklan seluler, iklan Banner adalah pilihan pertama yang baik. Studi kasus.

Prasyarat

  • Selesaikan Mulai.
  • (Khusus Android) Memahami cara menggunakan referensi jobject JNI (lihat Tips JNI Android).

Selalu uji dengan iklan percobaan

Saat mem-build 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 untuk menampilkan iklan pengujian untuk setiap permintaan, dan Anda bebas menggunakannya di aplikasi Anda sendiri saat melakukan coding, pengujian, dan debugging. 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 UIView iOS yang ditransmisikan 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 secara berkala memeriksa status operasi inisialisasi dengan memanggil InitializeLastResult() pada objek AdView. Hal ini dapat membantu melacak proses inisialisasi di loop game 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 Anda perluas dan teruskan ke AdView::SetListener() untuk mendapatkan notifikasi tentang perubahan status tampilan iklan.

Memperluas metode di AdListener bersifat opsional, sehingga Anda hanya perlu mengimplementasikan metode yang Anda inginkan. 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 titik (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 Papan Peringkat IAB Tablet kLeaderboard
Lebar yang disediakan x Tinggi adaptif Banner adaptif Ponsel dan Tablet T/A

Ukuran iklan kustom

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

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

Referensi lainnya

Contoh di GitHub

Kisah sukses