네이티브 광고 옵션

네이티브 광고에는 다양한 고급 기능이 있어 최상의 광고 경험을 제공할 수 있습니다. 이 가이드에서는 네이티브 광고의 고급 기능을 사용하는 방법을 알아보세요.

기본 요건

애셋 관리

선호하는 미디어 가로세로 비율 컨트롤

미디어 가로세로 비율 컨트롤을 사용하면 광고 소재를 사용합니다.

NativeAdOptions.MediaAspectRatio 값을 사용하여 NativeAdOptions.Builder.setMediaAspectRatio()를 호출합니다.

  • 설정하지 않으면 반환되는 광고는 모든 미디어 가로세로 비율을 가질 수 있습니다.

  • 설정하면 선택합니다.

다음 예에서는 확인할 수 있습니다.

NativeAdOptions nativeAdOptions = new NativeAdOptions.Builder()
                              .setMediaAspectRatio(NativeAdOptions.NATIVE_MEDIA_ASPECT_RATIO_LANDSCAPE)
                              .build();

AdLoader loader = new AdLoader.Builder(this, '/21775744923/example/native')
                              .withNativeAdOptions(nativeAdOptions)
                              .build();

이미지 다운로드 컨트롤

이미지 다운로드 컨트롤을 사용하면 이미지 확장 소재를 표시할지 아니면 URI만 표시할지 결정할 수 있음 SDK에 의해 반환됩니다.

NativeAdOptions.Builder.setReturnUrlsForImageAssets()를 호출합니다. boolean 값으로 대체합니다.
  • 이미지 다운로드 컨트롤은 기본적으로 사용 중지되어 있습니다.

  • 사용 중지하면 Google 모바일 광고 SDK가 이미지와 URI를 모두 채웁니다.

  • 사용 설정하면 SDK는 URI만 채우므로 개발자가 원하는 실제 이미지를 직접 다운로드할 수 있습니다.

다음 예는 SDK가 URI만 반환하도록 지시합니다.

NativeAdOptions nativeAdOptions = new NativeAdOptions.Builder()
                                                     .setReturnUrlsForImageAssets(true)
                                                     .build();

AdLoader loader = new AdLoader.Builder(this, '/21775744923/example/native')
                              .withNativeAdOptions(nativeAdOptions)
                              .forNativeAd(nativeAd -> {
                                List<Uri> imageUris = new ArrayList<>();
                                for (Image image : nativeAd.getImages()) {
                                  imageUris.add(image.getUri());
                                }
                              })
                              .build();

이미지 페이로드 컨트롤

일부 광고에는 하나의 이미지가 아닌 여러 개의 이미지가 포함되어 있습니다. 이 기능의 용도 앱이 모든 이미지를 표시할 준비가 되었는지 아니면 하나의 이미지만 표시할 준비가 되었는지 나타냅니다.

boolean 값을 사용하여 NativeAdOptions.Builder.setRequestMultipleImages()를 호출합니다.
  • 이미지 페이로드 컨트롤은 기본적으로 사용 중지되어 있습니다.

  • 사용 중지하면 앱에서 계열이 포함된 모든 애셋의 첫 번째 이미지입니다.

  • 사용 설정하면 앱에서 둘 이상의 이미지가 포함된 애셋에 대해 모든 이미지를 표시할 준비가 되었다는 뜻입니다.

다음 예에서는 SDK가 여러 이미지 애셋을 반환하도록 지시합니다.

NativeAdOptions nativeAdOptions = new NativeAdOptions.Builder()
                                                     .setRequestMultipleImages(true)
                                                     .build();

AdLoader loader = new AdLoader.Builder(this, '/21775744923/example/native')
                              .withNativeAdOptions(nativeAdOptions)
                              .build();

AdChoices 게재위치

AdChoices 위치 제어

AdChoices 위치 컨트롤을 사용하면 광고를 표시할 모서리를 AdChoices 아이콘

NativeAdOptions.Builder.setAdChoicesPlacement()를 호출합니다. NativeAdOption.AdChoicesPlacement 포함 값에 사용합니다.

  • 설정하지 않으면 AdChoices 아이콘 위치가 오른쪽 상단으로 설정됩니다.

  • 설정하면 요청에 따라 AdChoices가 맞춤 위치에 배치됩니다.

다음 예는 맞춤 AdChoices 이미지 위치를 설정하는 방법을 보여줍니다.

NativeAdOptions nativeAdOptions = new NativeAdOptions.Builder()
                                                     .setAdChoicesPlacement(NativeAdOptions.ADCHOICES_BOTTOM_RIGHT)
                                                     .build();

AdLoader loader = new AdLoader.Builder(this, '/21775744923/example/native')
                              .withNativeAdOptions(nativeAdOptions)
                              .build();

AdChoices 맞춤 보기

AdChoices 맞춤 보기 기능을 사용하면 AdChoices 아이콘을 맞춤 위치를 찾을 수 있습니다. 이는 네 모서리 중 하나만 지정할 수 있는 AdChoices 위치 제어와는 다릅니다.

NativeAdView.setAdChoicesView()를 호출합니다. AdChoicesView 포함 값에 사용합니다.

다음 예는 AdChoicesView 내에서 렌더링된 AdChoices 아이콘


public void onNativeAdLoaded(NativeAd ad) {
    NativeAdView nativeAdView = new NativeAdView(getApplicationContext());
    AdChoicesView adChoicesView = new AdChoicesView(this);
    nativeAdView.setAdChoicesView(adChoicesView);
}

동영상 컨트롤

음소거 동작 시작

시작 음소거 동작을 사용하면 동영상의 시작 오디오를 사용 중지하거나 사용 설정할 수 있습니다.

VideoOptions.Builder.setStartMuted()를 호출합니다. boolean 값으로 대체합니다.
  • 시작 음소거 동작은 기본적으로 사용 설정되어 있습니다.

  • 사용 중지하면 앱에서 동영상이 오디오입니다.

  • 사용 설정하면 앱에서 동영상이 오디오 음소거 상태로 시작하도록 요청합니다.

다음 예는 오디오 음소거를 해제한 상태로 동영상을 시작하는 방법을 보여줍니다.

VideoOptions videoOptions = new VideoOptions.Builder()
                                            .setStartMuted(false)
                                            .build();

NativeAdOptions adOptions = new NativeAdOptions.Builder()
                                               .setVideoOptions(videoOptions)
                                               .build();

AdLoader loader = new AdLoader.Builder(this, '/21775744923/example/native')
                              .withNativeAdOptions(adOptions).build();

맞춤 재생 컨트롤

이를 통해 맞춤 동영상 입력 컨트롤을 요청하여 동영상을 재생, 일시중지 또는 음소거할 수 있습니다.

VideoOptions.Builder.setCustomControlsRequested()를 호출합니다. boolean 값으로 대체합니다.
  • 맞춤 재생 컨트롤은 기본적으로 사용 중지되어 있습니다.

  • 사용 중지하면 동영상에 SDK 렌더링 입력 컨트롤이 표시됩니다.

  • 광고에 동영상 콘텐츠가 있고 맞춤 컨트롤이 사용 설정된 경우 맞춤 컨트롤을 광고와 함께 표시하세요. 왜냐하면 광고는 제어합니다. 그러면 컨트롤은 VideoController

다음 예는 맞춤 재생 컨트롤을 사용하여 동영상을 요청하는 방법을 보여줍니다.

VideoOptions videoOptions = new VideoOptions.Builder()
                                            .setCustomControlsRequested(true)
                                            .build();

NativeAdOptions adOptions = new NativeAdOptions.Builder()
                                               .setVideoOptions(videoOptions)
                                               .build();

AdLoader loader = new AdLoader.Builder(this, '/21775744923/example/native')
                              .withNativeAdOptions(adOptions).build();

맞춤 컨트롤이 사용 설정되어 있는지 확인

요청 시 반환된 광고가 게재될지 여부를 알 수 없으므로 맞춤 동영상 컨트롤이 있는 경우 맞춤 컨트롤이 사용 설정되어 있는지 확인해야 합니다.

자바

@Override
public void onNativeAdLoaded(NativeAd nativeAd) {
  MediaContent mediaContent = nativeAd.getMediaContent();
  if (mediaContent != null) {
    VideoController videoController = mediaContent.getVideoController();
    boolean canShowCustomControls = videoController.isCustomControlsEnabled();
  }
}

Kotlin

NativeAd.OnNativeAdLoadedListener { ad ->
  val mediaContent = ad.mediaContent
  if (mediaContent != null) {
    val videoController = mediaContent.videoController
    val canShowCustomControls = videoController.isCustomControlsEnabled
  }
}

맞춤 클릭 동작

맞춤 클릭 동작은 광고 뷰에서 스와이프를 광고 클릭으로 등록할 수 있는 네이티브 광고 기능입니다. 이는 스와이프를 사용하는 앱에서 작동하도록 설계되었습니다. 동작입니다. 이 가이드에서는 맞춤 클릭을 사용 설정하는 방법을 보여줍니다. 동작을 설정할 수 있습니다.

NativeAdOptions.Builder.enableCustomClickGestureDirection()를 호출합니다. NativeAdOptions.SwipeGestureDirection 포함 탭을 클릭으로 허용할지 여부를 나타내는 boolean이 있습니다.

  • 맞춤 클릭 동작은 기본적으로 사용 중지되어 있습니다.

  • 사용 중지하면 앱에서 정상적인 클릭 동작을 지원합니다.

  • 사용 설정하면 앱에서 맞춤 스와이프 동작을 지원합니다.

다음 예에서는 오른쪽으로 스와이프하는 맞춤 동작을 구현하고 일반 탭 동작을 유지합니다.

NativeAdOptions adOptions = new NativeAdOptions
    .Builder()
    .enableCustomClickGestureDirection(NativeAdOptions.SWIPE_GESTURE_DIRECTION_RIGHT,
            /* tapsAllowed= */ true)
    .build();

// The following sample ad unit ID has been enabled for custom click gestures
// and can be used for testing.
AdLoader.Builder builder = new AdLoader
    .Builder(this, '/21775744923/example/native')
    .withNativeAdOptions(adOptions);

스와이프 동작 이벤트 수신 대기

스와이프 동작 클릭이 기록되면 Google 모바일 광고 SDK는 기존 onAdClicked() 메서드 외에도 AdListener에서 onAdSwipeGestureClicked() 메서드를 호출합니다.

AdLoader adLoader = builder
    .withAdListener(
      new AdListener() {
        // Called when a swipe gesture click is recorded.
        @Override
        public void onAdSwipeGestureClicked() {
          Log.d(TAG, "A swipe gesture click has occurred.")
        }

        // Called when a swipe gesture click or a tap click is recorded, as
        // configured in NativeAdOptions.
        @Override
        public void onAdClicked() {
          Log.d(TAG, "A swipe gesture click or a tap click has occurred.")
        }
      })
    .build();

미디에이션

맞춤 클릭 동작은 Google 모바일 광고 SDK가 렌더링됩니다. 렌더링에 서드 파티 SDK가 필요한 광고 소스는 맞춤 클릭 유도 문구 설정에 응답하지 않습니다.