Gaya Native

Setelan gaya native mengaktifkan Google Ad Manager untuk menangani rendering iklan native berdasarkan gaya yang Anda tetapkan dalam produk. Pertama, tentukan ukuran dan penargetan. Kemudian, tambahkan HTML, CSS, dan JavaScript untuk menentukan iklan yang responsif dan menghasilkan tampilan berkualitas di semua layar. Anda tidak perlu melakukan salah satu rendering; Ad Manager otomatis menerapkan gaya native yang tepat untuk tujuan tersebut. Gaya native diterapkan seperti iklan banner, menggunakan GAMBannerView. Dapat digunakan dengan iklan tetap yang ditentukan sebelumnya, atau ukuran iklan yang dapat disesuaikan yang ditentukan saat runtime.

Prasyarat

  • Google Mobile Ads SDK versi 7.14.0 atau yang lebih tinggi

Panduan ini mengasumsikan bahwa Anda sudah memiliki pengetahuan tentang Google Mobile Ads SDK. Jika Anda belum melakukannya, pertimbangkan untuk menjalankan Panduan Memulai.

Ukuran tetap

Gaya native dengan ukuran tetap memungkinkan Anda mengontrol lebar dan tinggi iklan native. Untuk menyetel ukuran tetap, ikuti langkah-langkah berikut:

  1. Buat item baris di UI Ad Manager dan pilih salah satu ukuran standar dari menu dropdown kolom Size.

  2. Di Interface Builder, tetapkan lebar dan tinggi GAMBannerView agar sesuai dengan ukuran yang telah ditentukan yang Anda pilih di langkah 1. Anda dapat melihat daftar ukuran dan konstanta GADAdSize yang sesuai dalam elemen Banner ukuran bagian.

Mengimplementasikan gaya native dengan ukuran tetap semudah berikut petunjuk di Banner pertama Anda permintaan, tetapi Anda mendapatkan fleksibilitas dan kontrol atas HTML, CSS, dan JavaScript memberikan tampilan dan nuansa native yang alami pada iklan banner Anda.

Ukuran dapat menyesuaikan

Dalam beberapa kasus, ukuran yang tetap mungkin tidak masuk akal. Sebagai contoh, Anda mungkin ingin lebar iklan cocok dengan konten aplikasi, tetapi tingginya diperlukan untuk menyesuaikan secara dinamis agar sesuai dengan konten iklan. Untuk menangani kasus ini, Anda dapat menentukan Fluid sebagai ukuran iklan di UI Ad Manager, yang menunjukkan bahwa ukuran iklan ditentukan saat runtime di aplikasi. SDK menyediakan konstanta GADAdSize khusus, kGADAdSizeFluid, untuk menangani kasus ini. Tinggi ukuran iklan yang dapat disesuaikan ditentukan secara dinamis berdasarkan lebar yang ditentukan penayang, sehingga memungkinkan GAMBannerView, untuk menyesuaikan tingginya agar sesuai dengan materi iklan.

Permintaan yang dapat menyesuaikan

Tidak seperti format iklan lainnya, ukuran iklan kGADAdSizeFluid tidak memiliki lebar yang telah ditentukan, jadi pastikan untuk menetapkan bingkai banner secara eksplisit di kode Anda atau di Interface Builder. Jika lebar tidak ditentukan, SDK secara default menetapkan tinggi banner berdasarkan lebar perangkat.

Jika Anda membuat permintaan beberapa ukuran yang menyertakan kGADAdSizeFluid, iklan yang dihasilkan selalu ditempatkan di dalam penampung yang dapat disesuaikan dan berperilaku seperti iklan yang dapat disesuaikan. Jika materi iklan yang tidak dapat menyesuaikan yang ditampilkan dalam penampung yang dapat disesuaikan ini, SDK akan menempatkan iklan di tengah sehingga Anda tidak perlu mengubah batasan lebar setiap kali iklan baru ditampilkan.

Implementasi untuk membuat ukuran tunggal dan fluid multiukuran sangat mirip; satu-satunya perbedaan adalah Anda, tetapkan properti validAdSizes untuk menentukan iklan yang valid untuk permintaan iklan:

Swift

bannerView.validAdSizes = [NSValueFromGADAdSize(kGADAdSizeFluid),
                           NSValueFromGADAdSize(kGADAdSizeBanner)]

Objective-C

_bannerView.validAdSizes = @[ NSValueFromGADAdSize(kGADAdSizeFluid),
                              NSValueFromGADAdSize(kGADAdSizeBanner) ];

Berikut adalah tampilan implementasi lengkapnya dalam kode:

Swift

var bannerView: GAMBannerView!

override func viewDidLoad() {
  super.viewDidLoad()
  // Create the GAMBannerView and set its width to a width that makes sense for your
  // app. In this example, the width is set to the width of the UIViewController's
  // root view.
  bannerView = GAMBannerView(adSize: kGADAdSizeFluid)
  var frameRect = bannerView.frame
  frameRect.size.width = view.bounds.width
  bannerView.frame = frameRect

  // Uncomment this code for a multisize fluid request.
  // bannerView.validAdSizes = [NSValueFromGADAdSize(kGADAdSizeFluid),
  //                            NSValueFromGADAdSize(kGADAdSizeBanner)]

  bannerView.adUnitID = "YOUR_AD_UNIT_ID"
  bannerView.rootViewController = self

  // Make the ad request.
  bannerView.load(GAMRequest())
}

Objective-C

GAMBannerView *_bannerView;

- (void)viewDidLoad {
  [super viewDidLoad];
  // Create the GAMBannerView and set its width to a width that makes sense for your
  // app. In this example, the width is set to the width of the UIViewController's
  // root view.
  _bannerView = [[GAMBannerView alloc] initWithAdSize:kGADAdSizeFluid];
  CGRect frameRect = _bannerView.frame;
  frameRect.size.width = CGRectGetWidth(self.view.bounds);
  _bannerView.frame = frameRect;

  // Uncomment this code for a multisize fluid request.
  // _bannerView.validAdSizes = @[ NSValueFromGADAdSize(kGADAdSizeFluid),
  //                               NSValueFromGADAdSize(kGADAdSizeBanner) ];

  _bannerView.adUnitID = @"YOUR_AD_UNIT_ID";
  _bannerView.rootViewController = self;

  // Make the ad request.
  [_bannerView loadRequest:[GAMRequest request]];
}

Untuk melihat contoh penerapan ukuran iklan yang Dapat disesuaikan Ad Manager, unduh aplikasi iOS API Demo di Swift atau Objective-C.

Download Demo API

Protokol GADAdSizeDelegate

Sebaiknya Anda mengetahui tinggi banner sebelum ukuran iklannya berubah. Callback adView:willChangeAdSizeTo: memberi tahu delegasinya sebelum tampilan banner berubah menjadi GADAdSize baru. Untuk mendapat notifikasi sebelum tampilan spanduk berubah ke ukuran iklan baru, kelas Anda harus mematuhi protokol GADAdSizeDelegate.

Berikut adalah contoh implementasi adView:willChangeAdSizeTo: yang menunjukkan cara mendapatkan lebar dan tinggi banner yang baru:

Swift

// To be notified before the banner's ad size changes, your view controller class must
// conform to the GADAdSizeDelegate protocol.
bannerView.adSizeDelegate = self

// MARK: - GADAdSizeDelegate

func adView(_ bannerView: GADBannerView, willChangeAdSizeTo adSize: GADAdSize) {
  let height = adSize.size.height
  let width = adSize.size.width
}

Objective-C

// To be notified before the banner's ad size changes, your view controller class must
// conform to the GADAdSizeDelegate protocol.
_bannerView.adSizeDelegate = self;

#pragma mark - GADAdSizeDelegate

- (void)adView:(GADBannerView *)bannerView willChangeAdSizeTo:(GADAdSize)adSize {
  CGFloat height = adSize.size.height;
  CGFloat width = adSize.size.width;
}