컴패니언 광고

이 가이드는 Android IMA 구현에 컴패니언 광고를 추가하는 데 관심이 있는 게시자를 대상으로 합니다.

기본 요건

  • IMA SDK가 통합된 Android 애플리케이션 SDK가 통합된 앱이 아직 없는 경우 BasicExample을 참고하세요.
  • 컴패니언 광고를 반환하도록 구성된 광고 태그
    • 샘플이 필요한 경우 FAQ를 확인하세요.

유용한 입문서

앱에 IMA SDK를 아직 구현해야 하는 경우 시작 가이드를 확인하세요.

앱에 호환 광고 추가

컴패니언을 표시할 ViewGroup 만들기

컴패니언을 요청하기 전에 레이아웃에 컴패니언을 위한 공간을 만들어야 합니다. 레이아웃 XML에 ViewGroup 요소를 추가합니다. 이 예에서는 LinearLayout를 사용합니다. 이후 단계에서 이 요소의 참조를 AdDisplayContainer에 전달합니다. BasicExample 앱에 통합하는 경우 videoPlayerContainer 아래의 activity_my.xml에 추가합니다.

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" />

CompanionAdSlot 만들기

다음 단계는 CompanionAdSlot 객체를 빌드한 후 ArrayList<CompanionAdSlot>에 추가하는 것입니다. AdDisplayContainer는 컴패니언 광고 슬롯 목록을 가져와 한 번에 여러 컴패니언 광고를 표시할 수 있도록 합니다. CompanionAdSlot을 만들려면 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);

앱에 표시할 각 컴패니언 크기의 컴패니언 광고 슬롯을 만듭니다. IMA SDK는 뷰의 높이 및 너비와 일치하는 크기의 VAST 응답 컴패니언으로 컴패니언 광고 슬롯을 채웁니다. IMA SDK는 유동 크기 컴패니언 사용도 지원합니다. companionAdSlots를 만들었으면 AdsLoader에 추가해야 했습니다. 다음 예는 Exoplayer-IMA 확장 프로그램을 사용하는 IMA Android BasicExample을 사용하는지 아니면 확장 프로그램을 사용하지 않는 다른 IMA 구현을 사용하는지에 따라 이 작업을 수행하는 방법을 보여줍니다.

BasicExample

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

기타 구현

adsLoader.getAdDisplayContainer().setCompanionSlots(companionAdSlots);

다음은 이제 애플리케이션에 호환 광고가 표시됩니다.

유동적인 컴패니언 광고 표시

이제 IMA에서 유동 컴패니언 광고를 지원합니다. 이러한 함께 표시되는 광고는 광고 슬롯의 크기에 맞게 크기를 조절할 수 있습니다. 상위 뷰의 너비를 100% 채운 다음 호환 콘텐츠에 맞게 높이를 조절합니다. Ad Manager에서 Fluid 컴패니언 크기를 사용하여 설정됩니다. 이 값을 설정할 위치는 다음 이미지를 참고하세요.

Ad Manager의 호환 광고 설정을 보여주는 이미지 컴패니언 크기 옵션이 강조표시되어 있습니다.

유연한 호환을 위해 Android 앱 업데이트

CompanionAdSlot.FLUID_SIZE를 두 매개변수로 사용하도록 CompanionAdSlot.setSize() 메서드를 업데이트하여 유동적인 호환 슬롯을 선언할 수 있습니다.

  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);

FAQ

가이드를 따랐지만 컴패니언 광고가 표시되지 않습니다. 어떻게 해야 하나요?
먼저 태그가 실제로 동반자를 반환하는지 확인합니다. 이렇게 하려면 웹브라우저에서 태그를 열고 CompanionAds 태그를 찾습니다. 이 경우 반환되는 컴패니언의 크기가 CompanionAdSlot 객체에 전달하는 크기와 동일한지 확인합니다.
이 가이드를 따르면 호환 광고 슬롯은 어떻게 표시되나요?
아래 이미지는 BasicExample 에서 만들어졌으며 위에 재생 중인 콘텐츠 동영상과 아래에 함께 표시되는 광고가 있습니다.

IMA Android 컴패니언 광고의 예시 이미지입니다.