Widoki banerów to prostokątne reklamy graficzne lub reklamy tekstowe, które zajmują miejsce na ekranie. Pozostają na ekranie, gdy użytkownicy wchodzą w interakcję z aplikacją, i mogą być automatycznie odświeżane po upływie określonego czasu. Jeśli dopiero zaczynasz przygodę z reklamą mobilną, to świetny punkt wyjścia. Studium przypadku.
Z tego przewodnika dowiesz się, jak zintegrować widoki banerów z aplikacją Unity. Oprócz fragmentów kodu i instrukcji zawiera on też informacje o prawidłowym określaniu rozmiaru banerów oraz linki do dodatkowych materiałów.
Wymagania wstępne
Zanim przejdziesz dalej, skonfiguruj Google Mobile Ads Unity Plugin.
Zawsze testuj za pomocą reklam testowych
Poniższy przykładowy kod zawiera identyfikator jednostki reklamowej, którego możesz użyć do żądania reklam testowych. Został on specjalnie skonfigurowany tak, aby w odpowiedzi na każde żądanie zwracać reklamy testowe, a nie produkcyjne, dzięki czemu można go bezpiecznie używać.
Jednak po zarejestrowaniu aplikacji w interfejsie internetowym AdMob i utworzeniu własnych identyfikatorów jednostek reklamowych do użycia w aplikacji, podczas jej tworzenia wyraźnie skonfiguruj swoje urządzenie jako urządzenie testowe.
Android
ca-app-pub-3940256099942544/1033173712
iOS
ca-app-pub-3940256099942544/4411468910
Zainicjuj Google Mobile Ads Unity Plugin
Zanim aplikacja wczyta reklamy, musi zainicjować Google Mobile Ads Unity Plugin, wywołując funkcję MobileAds.Initialize(). Należy to zrobić tylko raz, najlepiej przy uruchomieniu aplikacji.
using GoogleMobileAds;
using GoogleMobileAds.Api;
public class GoogleMobileAdsDemoScript : MonoBehaviour
{
public void Start()
{
// Initialize Google Mobile Ads Unity Plugin.
MobileAds.Initialize((InitializationStatus initStatus) =>
{
// This callback is called once the MobileAds SDK is initialized.
});
}
}
Jeśli korzystasz z zapośredniczenia, przed wczytaniem reklam poczekaj na wywołanie zwrotne, aby mieć pewność, że wszystkie adaptery zapośredniczenia zostały zainicjowane.
Przykład BannerView
Poniższy przykładowy kod pokazuje, jak używać widoku banera. W tym przykładzie utworzymy instancję widoku banera, użyjemy AdRequest do wczytania reklamy do widoku banera, a następnie rozszerzymy jego możliwości, obsługując zdarzenia cyklu życia.
Tworzenie widoku banera
Pierwszym krokiem do użycia widoku banera jest utworzenie jego instancji.
Zastąp AD_UNIT_ID identyfikatorem jednostki reklamowej.
Konstruktor BannerView ma te parametry:
adUnitId: identyfikator jednostki reklamowej banera reklamowego, który ma zostać wczytany.AdSize: rozmiar banera, którego chcesz użyć.AdPosition: pozycja, w której mają być umieszczane widoki banerów.
(Opcjonalnie) Tworzenie widoku banera z niestandardową pozycją
Aby mieć większą kontrolę nad miejscem umieszczenia widoku banera na ekranie, niż zapewniają wartości AdPosition, użyj konstruktora, który jako parametry ma współrzędne X i Y:
Lewy górny róg widoku banera jest umieszczony w miejscu o współrzędnych x i y przekazanych do konstruktora, gdzie punktem początkowym jest lewy górny róg ekranu.
(Opcjonalnie) Tworzenie widoku banera o rozmiarze niestandardowym
Oprócz stałej AdSize możesz też określić niestandardowy rozmiar reklamy:
Wczytywanie banera reklamowego
Aby wczytać reklamę, utwórz obiekt AdRequest i przekaż go do metody LoadAd().
// Send a request to load an ad into the banner view.
bannerView.LoadAd(new AdRequest());
Nasłuchiwanie zdarzeń wyświetlenia banera
Aby dostosować działanie reklamy, możesz podpiąć się pod różne zdarzenia w jej cyklu życia, takie jak wczytywanie, otwieranie czy zamykanie. Aby nasłuchiwać tych zdarzeń, zarejestruj obiekt delegowany:
bannerView.OnBannerAdLoaded += () =>
{
// Raised when an ad is loaded into the banner view.
};
bannerView.OnBannerAdLoadFailed += (LoadAdError error) =>
{
// Raised when an ad fails to load into the banner view.
};
bannerView.OnAdPaid += (AdValue adValue) =>
{
// Raised when the ad is estimated to have earned money.
};
bannerView.OnAdImpressionRecorded += () =>
{
// Raised when an impression is recorded for an ad.
};
bannerView.OnAdClicked += () =>
{
// Raised when a click is recorded for an ad.
};
bannerView.OnAdFullScreenContentOpened += () =>
{
// Raised when an ad opened full screen content.
};
bannerView.OnAdFullScreenContentClosed += () =>
{
// Raised when the ad closed full screen content.
};
Zniszcz widok banera
Aby zniszczyć baner, wywołaj metodę Destroy(), która zwolni zasoby:
if (bannerView != null)
{
// Always destroy the banner view when no longer needed.
bannerView.Destroy();
bannerView = null;
}
Jeśli baner nie wczyta się, zalecamy jego odświeżenie zamiast niszczenia i tworzenia nowego. Więcej informacji znajdziesz w artykule Odświeżanie reklamy.
Odświeżanie reklamy
Jeśli jednostka reklamowa jest skonfigurowana do odświeżania, nie musisz wysyłać kolejnego żądania reklamy, gdy nie uda się jej wczytać. Google Mobile Ads Unity Plugin uwzględnia częstotliwość odświeżania określoną w interfejsie AdMob. Jeśli nie masz włączonego odświeżania, wyślij nową prośbę. Więcej informacji o odświeżaniu jednostek reklamowych, np. o ustawianiu częstotliwości odświeżania, znajdziesz w artykule Używanie opcji automatycznego odświeżania w przypadku banerów reklamowych.
Rozmiary banerów
Duże banery adaptacyjne to większy format przeznaczony do układów bez przewijania. W porównaniu ze standardowymi zakotwiczonymi banerami adaptacyjnymi te banery mają większą maksymalną wysokość (do 20% wysokości ekranu, od 50 do 150 dp). Ta większa przestrzeń jest zoptymalizowana pod kątem treści wideo.
W tabeli poniżej znajdziesz standardowe rozmiary banerów:
| Rozmiar w dp (szer. x wys.) | Opis | Dostępność | Stała AdSize |
|---|---|---|---|
| 320 x 50 | Standardowy baner | Telefony i tablety | BANNER |
| 320 x 100 | Duży baner | Telefony i tablety | LARGE_BANNER |
| 300 x 250 | Średni prostokąt IAB | Telefony i tablety | MEDIUM_RECTANGLE |
| 468 x 60 | Baner pełnowymiarowy IAB | Tablety | FULL_BANNER |
| 728 x 90 | Długi baner IAB | Tablety | LEADERBOARD |
| Podana szerokość x wysokość adaptacyjna | Baner adaptacyjny | Telefony i tablety | Nie dotyczy |
| Szerokość ekranu x 32|50|90 | Baner inteligentny | Telefony i tablety | SMART_BANNER |
| Dowiedz się więcej o banerach adaptacyjnych, które mają zastąpić banery inteligentne. | |||
Dodatkowe materiały
- Przykład HelloWorld: minimalna implementacja wszystkich formatów reklam.