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
- Zapoznaj się z przewodnikiem dla początkujących.
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:
adLoader:didFailToReceiveAdWithError:
w:GADAdLoaderDelegate
adLoader:didReceiveNativeAd:
w:GADNativeAdLoaderDelegate
Żą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ądzeniaGADAdLoader
aż do poprzedniej prośby zakończy się wczytywanie, co wskazujeadLoaderDidFinishLoading:
.
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.