Używanie wbudowanych banerów adaptacyjnych w przypadku banerów przewijanych

Banery adaptacyjne pozwalają określić szerokość reklamy, aby wyznaczyć jej optymalny rozmiar. Banery adaptacyjne zwiększają też skuteczność, optymalizując rozmiar reklamy na każdym urządzeniu. Dzięki temu można zwiększyć skuteczność.

W porównaniu z zakotwiczonymi banerami adaptacyjnymi wbudowane banery adaptacyjne są większe, wyższe i używają zmiennych wysokości zamiast stałych. Wbudowane banery adaptacyjne mają zmienną wysokość i mogą zajmować cały ekran lub maksymalną wysokość, którą określisz.

Wbudowane banery adaptacyjne umieszczasz w treściach, które można przewijać, np.:

Diagram pokazujący różnice między banerami adaptacyjnymi a wbudowanymi banerami adaptacyjnymi

Zanim zaczniesz

Zanim przejdziesz dalej, zapoznaj się z przewodnikiem dla początkujących, Banery reklamowe.

Implementowanie wbudowanych banerów adaptacyjnych

Poniższy przykład pokazuje, jak to zrobić:

Kotlin

private fun loadAd() {
  // Create an inline adaptive ad size. 320 is a placeholder value.
  // Replace 320 with your banner container width.
  val adSize = AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, 320)

  // Step 1 - Create a BannerAdRequest object with ad unit ID and size.
  val adRequest = BannerAdRequest.Builder("AD_UNIT_ID", adSize).build()

  // Step 2 - Load the ad.
  BannerAd.load(
    adRequest,
    object : AdLoadCallback<BannerAd> {
      override fun onAdLoaded(ad: BannerAd) {
        // Assign the loaded ad to the BannerAd object.
        bannerAd = ad
        // Step 3 - Call BannerAd.getView() to get the View and add it
        // to view hierarchy on the UI thread.
        activity?.runOnUiThread {
          binding.bannerViewContainer.addView(ad.getView(requireActivity()))
        }
      }

      override fun onAdFailedToLoad(loadAdError: LoadAdError) {
        bannerAd = null
      }
    }
  )
}

Java

private void loadAd() {
  // Create an inline adaptive ad size. 320 is a placeholder value.
  // Replace 320 with your banner container width.
  AdSize adSize = AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, 320);

  // Step 1 - Create a BannerAdRequest object with ad unit ID and size.
  BannerAdRequest adRequest = new BannerAdRequest.Builder("AD_UNIT_ID",
      adSize).build();

  // Step 2 - Load the ad.
  BannerAd.load(
      adRequest,
      new AdLoadCallback<BannerAd>() {
        @Override
        public void onAdLoaded(@NonNull BannerAd ad) {
          // Assign the loaded ad to the BannerAd object.
          bannerAd = ad;
          // Step 3 - Call BannerAd.getView() to get the View and add it
          // to view hierarchy on the UI thread.
          if (getActivity() != null) {
            getActivity()
                .runOnUiThread(() ->
                    binding.bannerViewContainer.addView(ad.getView(getActivity())));
          }
        }

        @Override
        public void onAdFailedToLoad(@NonNull LoadAdError adError) {
          bannerAd = null;
        }
      });
}

Podczas implementowania banerów adaptacyjnych w aplikacji pamiętaj o tych kwestiach:

  • Rozmiary wbudowanych banerów adaptacyjnych najlepiej sprawdzają się, gdy używana jest pełna dostępna szerokość. W większości przypadków jest to pełna szerokość ekranu używanego urządzenia lub pełna szerokość treści nadrzędnej banera. Musisz znać szerokość widoku, który ma być umieszczony w reklamie, szerokość urządzenia, szerokość treści nadrzędnej i odpowiednie bezpieczne obszary.
  • Aby korzystać z rozmiarów adaptacyjnych, może być konieczne zaktualizowanie lub utworzenie nowych elementów zamówienia. Więcej informacji.

Określanie rozmiaru wbudowanego banera adaptacyjnego

Aby wstępnie wczytać wbudowany baner adaptacyjny w określonej orientacji, użyj tych metod:

Jeśli Twoja aplikacja obsługuje widoki w pionie i poziomie oraz chcesz wstępnie wczytać baner adaptacyjny w bieżącej orientacji, użyj AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(Context context, int width) Ta metoda wczytuje reklamę w bieżącej orientacji.

Ograniczanie wysokości wbudowanego banera adaptacyjnego

Domyślnie wbudowane banery adaptacyjne utworzone bez wartości maxHeight mają wartość maxHeight równą wysokości urządzenia. Aby ograniczyć wysokość wbudowanego banera adaptacyjnego, użyj AdSize.getInlineAdaptiveBannerAdSize(int width, int maxHeight) metody.