Reklamy towarzyszące

Ten przewodnik jest przeznaczony dla wydawców, którzy chcą dodać reklamy towarzyszące do implementacji IMA na Androida.

Wymagania wstępne

  • Aplikacja na Androida z zintegrowanym pakietem IMA SDK. Jeśli nie masz jeszcze aplikacji z zintegrowanym pakietem SDK, zapoznaj się z artykułem BasicExample.
  • tag reklamy skonfigurowany tak, aby zwracał reklamę towarzyszącą;

Przydatne informacje wstępne

Jeśli nadal musisz zaimplementować pakiet IMA SDK w swojej aplikacji, zapoznaj się z naszym przewodnikiem na temat rozpoczęcia.

Dodawanie reklam towarzyszących do aplikacji

Utwórz ViewGroup, aby wyświetlić towarzyszącą kreację.

Zanim poprosisz o towarzysza, musisz utworzyć dla niego miejsce w swojej kompozycji. W pliku XML układu dodaj element ViewGroup. W tym przykładzie użyto elementu LinearLayout. W kolejnym kroku przekażesz odwołanie do tego elementu do AdDisplayContainer. Jeśli integrację przeprowadzasz w aplikacji BasicExample, dodaj ten kod do activity_my.xml pod videoPlayerContainer.

activity_my.xml

<LinearLayout
  android:id="@+id/companionAdSlot"
  android:layout_width="match_parent"
  android:layout_height="250dp"
  android:layout_gravity="center_horizontal"
  android:gravity="center"
  android:orientation="vertical"
  android:textAlignment="center" />

Tworzenie CompanionAdSlot

Następnym krokiem jest utworzenie obiektu CompanionAdSlot, który jest następnie dodawany do obiektu ArrayList<CompanionAdSlot>. AdDisplayContainer przyjmuje listę miejsc docelowych reklam towarzyszących, dzięki czemu możesz wyświetlać wiele reklam towarzyszących jednocześnie. Aby utworzyć CompanionAdSlot, musisz utworzyć instancję klasy ImaSdkFactory.

  ImaSdkFactory sdkFactory = ImaSdkFactory.getInstance();
  ViewGroup companionViewGroup = (ViewGroup) findViewById(R.id.companionAdSlot);

  CompanionAdSlot companionAdSlot = sdkFactory.createCompanionAdSlot();
  companionAdSlot.setContainer(companionViewGroup);
  companionAdSlot.setSize(300, 250);
  ArrayList<CompanionAdSlot> companionAdSlots = new ArrayList<CompanionAdSlot>();
  companionAdSlots.add(companionAdSlot);

Utwórz boks reklamy towarzyszącej dla każdego rozmiaru kreacji towarzyszącej, który chcesz wyświetlać w aplikacji. IMA SDK wypełnia boks reklamy towarzyszącej wszystkimi kreacjami towarzyszącymi z odpowiedzi VAST, które mają wymiary pasujące do wysokości i szerokości widoku. Pakiet IMA SDK obsługuje też elastyczne reklamy towarzyszące. Po utworzeniu companionAdSlots musisz je dodać do AdsLoader. Poniżej znajdziesz przykłady pokazujące, jak to zrobić w zależności od tego, czy używasz elementu IMA Android BasicExample, który korzysta z rozszerzenia Exoplayer-IMA, czy innych implementacji IMA, które nie korzystają z rozszerzenia.

BasicExample

adsLoader = new ImaAdsLoader.Builder(this).setCompanionAdSlots(companionAdSlots).build();

Inne implementacje

adsLoader.getAdDisplayContainer().setCompanionSlots(companionAdSlots);

To już wszystko. Twoja aplikacja wyświetla teraz reklamy towarzyszące.

Wyświetlanie elastycznych reklam towarzyszących

IMA obsługuje teraz elastyczne reklamy towarzyszące. Rozmiar tych reklam może się zmieniać, aby pasował do rozmiaru boksu reklamowego. Wypełniają one 100% szerokości widoku nadrzędnego, a potem zmieniają rozmiar wysokości, aby dopasować je do treści towarzyszących. Są one ustawiane za pomocą rozmiaru reklamy towarzyszącej Fluid w usłudze Ad Manager. Informacje o tym, gdzie ustawić tę wartość, znajdziesz na poniższym obrazku.

Ilustracja pokazująca ustawienia reklam towarzyszących w usłudze Ad Manager Wyróżnia opcję rozmiarów kreacji towarzyszących.

Aktualizowanie aplikacji na Androida dla aplikacji towarzyszących

Możesz zadeklarować elastyczny slot towarzyszący, aktualizując metodę CompanionAdSlot.setSize(), aby przyjmowała parametr CompanionAdSlot.FLUID_SIZE jako oba parametry.

  ImaSdkFactory sdkFactory = ImaSdkFactory.getInstance();
  ViewGroup companionViewGroup = (ViewGroup) findViewById(R.id.companionAdSlot);

  CompanionAdSlot companionAdSlot = sdkFactory.createCompanionAdSlot();
  companionAdSlot.setContainer(companionViewGroup);
  companionAdSlot.setSize(CompanionAdSlot.FLUID_SIZE, CompanionAdSlot.FLUID_SIZE);
  ArrayList<CompanionAdSlot> companionAdSlots = new ArrayList<CompanionAdSlot>();
  companionAdSlots.add(companionAdSlot);

Najczęstsze pytania

Postępowałem(-am) zgodnie z instrukcją, ale nie widzę reklam towarzyszących. Co mam zrobić?
Najpierw sprawdź, czy tag naprawdę zwraca towarzyszy. Aby to zrobić, otwórz tag w przeglądarce i poszukaj tagu CompanionAds. Jeśli tak się dzieje, sprawdź, czy rozmiar zwracanego elementu towarzyszącego jest taki sam jak wymiary przekazywane do obiektu CompanionAdSlot.
Jak będzie wyglądał boks reklamowy towarzyszący, gdy będę postępować zgodnie z tym przewodnikiem?
Poniższy obraz został utworzony na podstawie BasicExample i przedstawia film z treściami odtwarzany u góry oraz reklamę towarzyszącą u dołu.

Przykład obrazu reklamy towarzyszącej IMA na Androida