Opsi iklan native

Iklan native memiliki banyak fitur lanjutan yang memungkinkan Anda membuat penyesuaian tambahan dan memberikan pengalaman iklan sebaik mungkin. Panduan ini menunjukkan cara menggunakan fitur lanjutan iklan native.

Prasyarat

Kontrol aset

Kontrol rasio aspek media pilihan

Kontrol Rasio Aspek Media memungkinkan Anda menentukan preferensi untuk rasio aspek materi iklan.

Tetapkan GADNativeAdMediaAdLoaderOptions mediaAspectRatio dengan GADMediaAspectRatio.

  • Jika tidak disetel, iklan yang ditampilkan dapat memiliki rasio aspek media apa pun.

  • Jika ditetapkan, Anda akan dapat meningkatkan pengalaman pengguna dengan menentukan jenis rasio aspek yang diinginkan.

Contoh berikut menginstruksikan SDK untuk memilih gambar atau video yang ditampilkan dengan rasio aspek tertentu.

GADNativeAdMediaAdLoaderOptions *nativeOption = [[GADNativeAdMediaAdLoaderOptions alloc] init];
nativeOption.mediaAspectRatio = GADMediaAspectRatioAny;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOption ]];

Kontrol download gambar

Kontrol download gambar memungkinkan Anda memutuskan apakah aset gambar atau hanya URI yang ditampilkan oleh SDK.

Tetapkan GADNativeAdImageAdLoaderOptions disableImageLoading dengan nilai BOOL.
  • Kontrol download gambar dinonaktifkan secara default.

  • Jika dinonaktifkan, Google Mobile Ads SDK akan mengisi gambar dan URI untuk Anda.

  • Jika diaktifkan, SDK hanya akan mengisi URI, sehingga Anda dapat mendownload gambar yang sebenarnya sesuai kebijaksanaan Anda.

Contoh berikut menginstruksikan SDK untuk hanya menampilkan URI.

GADNativeAdImageAdLoaderOptions *nativeOption = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOption.disableImageLoading = YES;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOption ]];

Kontrol payload gambar

Beberapa iklan memiliki serangkaian gambar, bukan hanya satu. Gunakan fitur ini untuk menunjukkan apakah aplikasi Anda siap menampilkan semua gambar atau hanya satu.

Tetapkan GADNativeAdImageAdLoaderOptions shouldRequestMultipleImages dengan nilai BOOL.
  • Kontrol payload gambar dinonaktifkan secara default.

  • Jika dinonaktifkan, aplikasi Anda akan menginstruksikan SDK untuk hanya menyediakan gambar pertama untuk aset apa pun yang berisi serial.

  • Jika diaktifkan, aplikasi Anda akan menunjukkan bahwa aplikasi siap menampilkan semua gambar untuk aset yang memiliki lebih dari satu.

Contoh berikut menginstruksikan SDK untuk menampilkan beberapa aset gambar.

GADNativeAdImageAdLoaderOptions *nativeOption = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOption.shouldRequestMultipleImages = YES;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOption ]];

Penempatan AdChoices

Kontrol posisi AdChoices

Kontrol posisi AdChoices memungkinkan Anda memilih sudut untuk merender ikon AdChoices.

Tetapkan GADNativeAdViewAdOptions preferredAdChoicesPosition dengan nilai GADAdChoicesPosition.

  • Jika tidak ditetapkan, posisi ikon AdChoices akan ditetapkan ke kanan atas.

  • Jika ditetapkan, AdChoices akan ditempatkan di posisi kustom seperti yang diminta.

Contoh berikut menunjukkan cara menetapkan posisi gambar AdChoices kustom.

GADNativeAdViewAdOptions *nativeOptions = [[GADNativeAdViewAdOptions alloc] init];
nativeOptions.preferredAdChoicesPosition = GADAdChoicesPositionTopLeftCorner;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOptions ]];

Tampilan kustom AdChoices

Fitur tampilan kustom AdChoices memungkinkan Anda memosisikan ikon AdChoices di lokasi kustom. Hal ini berbeda dengan kontrol posisi AdChoices, yang hanya memungkinkan spesifikasi salah satu dari empat sudut.

Tetapkan properti GADNativeAd.adChoicesView dengan GADAdChoicesView sebelum rendering dan konten AdChoices akan dirender di dalam GADAdChoicesView.

Contoh berikut menunjukkan cara menetapkan tampilan AdChoices kustom. Ikon AdChoices akan dirender di dalam GADAdChoicesView.

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader didReceiveNativeAd:(GADNativeAd *)nativeAd {

    ...

    
    GADAdChoicesView *customAdChoicesView =
        [[GADAdChoicesView alloc] initWithFrame: CGRectMake(..., ..., ..., ...)];

    [nativeAdView addSubview:customAdChoicesView];
    nativeAdView.adChoicesView = customAdChoicesView;

    // Associate the native ad view with the native ad object. This is
    // required to make the ad clickable.
    // Note: this should always be done after populating the ad views.
    nativeAdView.nativeAd = nativeAd;
}

Swift

func adLoader(_ adLoader: GADAdLoader, didReceive nativeAd: GADNativeAd) {
    refreshAdButton.isEnabled = true

    ...
    // Define a custom position for the AdChoices icon.
    let customRect = CGRect(x: 100, y: 100, width: 15, height: 15)
    let customAdChoicesView = GADAdChoicesView(frame: customRect)
    nativeAdView.addSubview(customAdChoicesView)
    nativeAdView.adChoicesView = customAdChoicesView

    // Associate the native ad view with the native ad object. This is
    // required to make the ad clickable.
    // Note: this should always be done after populating the ad views.
    nativeAdView.nativeAd = nativeAd;
}

Kontrol video

Memulai perilaku bisukan

Perilaku mulai dibisukan memungkinkan Anda menonaktifkan atau mengaktifkan audio awal video.

Tetapkan GADVideoOptions startMuted dengan nilai BOOL.
  • Perilaku mulai dibisukan diaktifkan secara default.

  • Jika dinonaktifkan, aplikasi Anda akan meminta video dimulai dengan audio.

  • Jika diaktifkan, aplikasi Anda akan meminta video dimulai dengan audio dibisukan.

Contoh berikut menunjukkan cara memulai video dengan audio yang tidak dibisukan.

GADVideoOptions *nativeOptions = [[GADVideoOptions alloc] init];
nativeOptions.startMuted = NO;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOptions ]];

Kontrol pemutaran kustom

Hal ini memungkinkan Anda meminta kontrol input video kustom untuk memutar, menjeda, atau membisukan video.

Tetapkan GADVideoOptions customControlsRequested dengan nilai BOOL.
  • Kontrol pemutaran kustom dinonaktifkan secara default.

  • Jika dinonaktifkan, video Anda akan menampilkan kontrol input yang dirender SDK.

  • Jika iklan memiliki konten video dan kontrol kustom diaktifkan, Anda harus menampilkan kontrol kustom bersama iklan, karena iklan tidak akan menunjukkan kontrol itu sendiri. Kontrol kemudian dapat memanggil metode yang relevan di GADVideoController.

Contoh berikut menunjukkan cara meminta video dengan kontrol pemutaran kustom.

GADVideoOptions *nativeOptions = [[GADVideoOptions alloc] init];
nativeOptions.customControlsRequested = YES;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOptions ]];

Memeriksa apakah kontrol kustom diaktifkan

Karena tidak diketahui pada waktu permintaan apakah iklan yang ditampilkan akan mengizinkan kontrol video kustom, Anda harus memeriksa apakah iklan tersebut mengaktifkan kontrol kustom.

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader
    didReceiveNativeAd:(GADNativeAd*)nativeAd {

  GADVideoController *videoController = nativeAd.mediaContent.videoController;
  BOOL canShowCustomControls = videoController.customControlsEnabled;

}

Swift

func adLoader(_ adLoader: GADAdLoader, didReceive nativeAd: GADNativeAd) {
        let videoController = nativeAd.mediaContent.videoController
        let canShowCustomControls = videoController?.customControlsEnabled() == true
}

Merender kontrol video kustom

Render kontrol video kustom menggunakan praktik terbaik berikut:

  1. Render tampilan kontrol kustom sebagai turunan dari tampilan iklan native. Pendekatan ini memastikan bahwa penghitungan visibilitas pengukuran terbuka menganggap kontrol kustom sebagai halangan yang tidak mengganggu.
  2. Hindari merender overlay yang tidak terlihat di seluruh tampilan media. Overlay memblokir klik pada tampilan media, sehingga berdampak negatif pada performa iklan native. Sebagai gantinya, buat overlay kecil yang cukup besar untuk menyesuaikan kontrol.

Gestur klik kustom

Gestur klik kustom adalah fitur iklan native yang memungkinkan geser pada tampilan iklan didaftarkan sebagai klik iklan. Fitur ini dirancang untuk berfungsi dengan aplikasi yang menggunakan gestur geser untuk navigasi konten. Panduan ini menunjukkan cara mengaktifkan gestur klik kustom di iklan native Anda.

Lakukan inisialisasi instance GADNativeAdCustomClickGestureOptions dengan arah geser yang dipilih. Anda juga perlu menunjukkan apakah Anda ingin ketukan diizinkan sebagai klik.

  • Gestur klik kustom dinonaktifkan secara default.

  • Jika dinonaktifkan, hanya ketukan yang akan dihitung sebagai klik.

  • Jika diaktifkan, gestur geser akan dihitung sebagai klik, dan Anda dapat menentukan apakah ketukan masih dapat dihitung sebagai klik.

Contoh berikut menunjukkan cara menerapkan gestur geser kustom ke kanan dan mempertahankan perilaku ketuk normal.

GADNativeAdCustomClickGestureOptions *swipeGestureOptions = [[GADNativeAdCustomClickGestureOptions alloc]
        initWithSwipeGestureDirection:UISwipeGestureRecognizerDirectionRight
                          tapsAllowed:YES];

// The following sample ad unit ID has been enabled for custom click gestures
// and can be used for testing.
self.adLoader = [[GADAdLoader alloc]
        initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
      rootViewController:self
                 adTypes:@[ GADAdLoaderAdTypeNative ]
                 options:@[ swipeGestureOptions ]];

Memproses peristiwa gestur geser

Saat klik gestur geser direkam, Google Mobile Ads SDK akan memanggil metode delegasi nativeAdDidRecordSwipeGestureClick: di GADNativeAdDelegate, selain metode delegasi nativeAdDidRecordClick: yang sudah ada.

#pragma mark - GADNativeAdDelegate implementation

// Called when a swipe gesture click is recorded.
- (void)nativeAdDidRecordSwipeGestureClick:(GADNativeAd *)nativeAd {
  NSLog(@"A swipe gesture click has occurred.");
}

// Called when a swipe gesture click or a tap click is recorded, as configured in
// GADNativeAdCustomClickGestureOptions.
- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
  NSLog(@"A swipe gesture click or tap click has occurred.");
}

Mediasi

Gestur klik kustom hanya berfungsi pada iklan native yang dirender Google Mobile Ads SDK. Sumber iklan yang memerlukan SDK pihak ketiga untuk rendering, tidak merespons setelan arah klik kustom.