Reklamy natywne

Reklamy natywne to komponenty reklamy wyświetlane użytkownikom za pomocą komponentów interfejsu, które są unikalne dla platformy. Są wyświetlane z użyciem tych samych zajęć, których używasz w scenorysach i można je sformatować tak, aby pasowały do wizualnego projektu aplikacji.

Po wczytaniu reklamy natywnej aplikacja otrzymuje obiekt reklamy zawierający jej zasoby. a aplikacja – zamiast pakietu SDK do reklam mobilnych Google – jest odpowiedzialnej za ich wyświetlanie.

Ogólnie rzecz biorąc, wdrożenie reklam natywnych składa się z 2 części: wczytywania reklamy za pomocą pakietu SDK i wyświetlania treści reklamy w aplikacji.

Na tej stronie dowiesz się, jak wczytać pakiet SDK reklam natywnych.

Wymagania wstępne

Zawsze korzystaj z reklam testowych

Podczas tworzenia i testowania aplikacji używaj reklam testowych, a nie reklam, aktywne reklamy.

Najłatwiejszym sposobem wczytania reklam testowych jest użycie specjalnego identyfikatora testowego reklamy natywne na iOS:

/21775744923/example/native

Został on specjalnie skonfigurowany tak, aby wyświetlać reklamy testowe w odpowiedzi na każde żądanie. Możesz używać go we własnych aplikacjach podczas kodowania, testowania i debugowania. Upewnij się tylko, zastąp go identyfikatorem jednostki reklamowej przed opublikowaniem aplikacji.

Więcej informacji o działaniu reklam testowych w pakiecie SDK do reklam mobilnych Google znajdziesz w artykule Reklamy testowe.

Wczytaj reklamy

Reklamy natywne są wczytywane za pomocą klasy GADAdLoader, która wysyła wiadomości do swoich delegatów zgodnie z protokołem GADAdLoaderDelegate.

Oprócz zdefiniowanego przez system formatu natywnego możesz też własne niestandardowe formaty reklam natywnych, które można wykorzystać w reklamach natywnych sprzedawanych bezpośrednio. Niestandardowe formaty reklam natywnych pozwalają przekazywanie do aplikacji dowolnych uporządkowanych danych. Te reklamy są reprezentowane przez GADCustomNativeAd zajęcia.

Inicjowanie ładowarki reklam

Zanim załadujesz reklamę, musisz zainicjować moduł wczytywania reklam. Ten kod pokazuje, jak zainicjować GADAdLoader:

Swift

adLoader = GADAdLoader(adUnitID: "/21775744923/example/native",
    // The UIViewController parameter is optional.
    rootViewController: rootViewController,
    adTypes: [ .native ],
    options: [ ... ad loader options objects ... ])
adLoader.delegate = self

Objective-C

self.adLoader = [[GADAdLoader alloc]
      initWithAdUnitID:@"/21775744923/example/native"
    // The UIViewController parameter is nullable.
    rootViewController:rootViewController
               adTypes:@[ GADAdLoaderAdTypeNative ]
               options:@[ ... ad loader options objects ... ]];
self.adLoader.delegate = self;

Potrzebny będzie identyfikator jednostki reklamowej (możesz użyć identyfikatora testowego) oraz stałe wartości służące do przekazywania adTypes określającą formaty natywne, których żądasz, oraz dowolne ustawiane w parametrze options opcje. Na liście możliwych wartości parametru options można znaleźć w sekcji Ustawianie reklamy natywnej Strona Opcje.

Tablica adTypes powinna zawierać co najmniej jedną z tych stałych

Implementowanie delegata ładowarki reklam

Moduł wczytywania reklam musi wdrożyć protokoły właściwe dla danego typu reklamy. W przypadku reklam natywnych protokół GADNativeAdLoaderDelegate zawiera wiadomość która jest wysyłana do przedstawiciela po wczytaniu reklamy natywnej.

Swift

public func adLoader(_ adLoader: GADAdLoader,
            didReceive nativeAd: GADNativeAd)

Objective-C

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

Protokół GADCustomNativeAdLoaderDelegate zawiera wiadomość wysłaną do z przekazanym dostępem po wczytaniu reklamy z szablonu niestandardowego.

Swift

func adLoader(_ adLoader: GADAdLoader,
  Receive customNativeAd: GADCustomNativeAd)

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader
    didReceiveCustomNativeAd:(GADCustomNativeAd *) customNativeAd;

Wyślij żądanie

Po zainicjowaniu GADAdLoader wywołaj metodę loadRequest:, aby poprosić o reklamę:

Swift

adLoader.load(GAMRequest())

Objective-C

[self.adLoader loadRequest:[GAMRequest request]];

loadRequest: Metoda w GADAdLoader akceptuje takie samo GAMRequest jak banery i reklamy pełnoekranowe. Obiektów żądań można używać do dodawania kierowania reklam. jak w przypadku innych typów reklam.

Określanie, kiedy wczytywanie zostało zakończone

Gdy aplikacja wywoła funkcję loadRequest:, może uzyskać wyniki żądania za pomocą wywołań funkcji:

Żądanie pojedynczej reklamy spowoduje jedno wywołanie jednej z tych metod.

Obsługa nieudanych żądań

Powyższe protokoły rozszerzają protokół GADAdLoaderDelegate, który definiuje gdy nie uda się wczytać reklam.

Swift

public func adLoader(_ adLoader: GADAdLoader,
    didFailToReceiveAdWithError error: NSError)

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader
    didFailToReceiveAdWithError:(NSError *)error;

Otrzymywanie powiadomień o zdarzeniach reklamy natywnej

Aby otrzymywać powiadomienia o zdarzeniach związanych z interakcjami z reklamami natywnymi, wskaż przedstawiciela właściwości reklamy natywnej:

Swift

nativeAd.delegate = self

Objective-C

nativeAd.delegate = self;

Następnie zaimplementuj GADNativeAdDelegate aby odbierać następujące połączenia z przekazanym dostępem:

Swift

func nativeAdDidRecordImpression(_ nativeAd: GADNativeAd) {
  // The native ad was shown.
}

func nativeAdDidRecordClick(_ nativeAd: GADNativeAd) {
  // The native ad was clicked on.
}

func nativeAdWillPresentScreen(_ nativeAd: GADNativeAd) {
  // The native ad will present a full screen view.
}

func nativeAdWillDismissScreen(_ nativeAd: GADNativeAd) {
  // The native ad will dismiss a full screen view.
}

func nativeAdDidDismissScreen(_ nativeAd: GADNativeAd) {
  // The native ad did dismiss a full screen view.
}

func nativeAdWillLeaveApplication(_ nativeAd: GADNativeAd) {
  // The native ad will cause the app to become inactive and
  // open a new app.
}

Objective-C

- (void)nativeAdDidRecordImpression:(GADNativeAd *)nativeAd {
  // The native ad was shown.
}

- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
  // The native ad was clicked on.
}

- (void)nativeAdWillPresentScreen:(GADNativeAd *)nativeAd {
  // The native ad will present a full screen view.
}

- (void)nativeAdWillDismissScreen:(GADNativeAd *)nativeAd {
  // The native ad will dismiss a full screen view.
}

- (void)nativeAdDidDismissScreen:(GADNativeAd *)nativeAd {
  // The native ad did dismiss a full screen view.
}

- (void)nativeAdWillLeaveApplication:(GADNativeAd *)nativeAd {
  // The native ad will cause the app to become inactive and
  // open a new app.
}

Sprawdzone metody

Podczas wczytywania reklam przestrzegaj tych zasad.

  • Aplikacje, które używają reklam natywnych na liście, powinny wstępnie zapisywać listę reklam w pamięci podręcznej.

  • Podczas wstępnego buforowania reklam wyczyść pamięć podręczną i ponownie załaduj reklamy po upływie godziny.

  • Nie dzwoń ponownie do numeru loadRequest: z urządzenia GADAdLoader aż do poprzedniej prośby zakończy się wczytywanie, co wskazuje adLoaderDidFinishLoading:.

Wyświetlanie reklamy

Po załadowaniu reklamy wystarczy ją wyświetlić użytkownikom. Aby dowiedzieć się, jak to zrobić, zapoznaj się z przewodnikiem dotyczącym zaawansowanych funkcji natywnych.