Yerel video reklamlar

MediaContent

Yerel reklamlar, video veya resim gibi medya içeriği hakkında bilgi almak için kullanılan MediaContent sınıfındaki bir nesneye erişim sağlar. Ayrıca video reklam oynatmayı kontrol etmek ve oynatma etkinliklerini dinlemek için de kullanılır. NativeAd.getMediaContent() çağrısını yaparak MediaContent nesnesini elde edebilirsiniz.

MediaContent nesnesi, videonun en boy oranı ve süresi gibi bilgileri içerir. Aşağıdaki snippet'te, bir doğal reklamın en boy oranının ve süresinin nasıl alınacağı gösterilmektedir.

Kotlin

if (myNativeAd.mediaContent.hasVideoContent) {
  val mediaAspectRatio: Float = myNativeAd.mediaContent.aspectRatio
  val duration: Float = myNativeAd.mediaContent.duration
  // ...
}

Java

if (myNativeAd.getMediaContent().getHasVideoContent()) {
  float mediaAspectRatio = myNativeAd.getMediaContent().getAspectRatio();
  float duration = myNativeAd.getMediaContent().getDuration();
  // ...
}

Video etkinlikleri için geri çağırma işlevleri

Belirli video etkinliklerini işlemek için soyut VideoLifecycleCallbacks sınıfını genişleten bir sınıf yazın ve VideoController üzerinde setVideoLifecycleCallbacks() işlevini çağırın. Ardından, yalnızca önemsediğiniz geri çağırma işlevlerini geçersiz kılın.

Kotlin

val videoController = myNativeAd.mediaContent.videoController
videoController.videoLifecycleCallbacks = object : VideoController.VideoLifecycleCallbacks {
  override fun onVideoStart() {
    Log.d("MyApp", "Video Started")
  }

  override fun onVideoPlay() {
    Log.d("MyApp", "Video Played")
  }

  override fun onVideoPause() {
    Log.d("MyApp", "Video Paused")
  }

  override fun onVideoEnd() {
    Log.d("MyApp", "Video Ended")
  }

  override fun onVideoMute(boolean isMuted) {
    Log.d("MyApp", "Video Muted")
  }
}

Java

VideoController videoController = myNativeAd.getMediaContent().getVideoController();
videoController.setVideoLifecycleCallbacks(new VideoLifecycleCallbacks() {
  @Override
  public void onVideoStart() {
    Log.d("MyApp", "Video Started");
  }

  @Override
  public void onVideoPlay() {
    Log.d("MyApp", "Video Played");
  }

  @Override
  public void onVideoPause() {
    Log.d("MyApp", "Video Paused");
  }

  @Override
  public void onVideoEnd() {
    Log.d("MyApp", "Video Ended");
  }

  @Override
  public void onVideoMute(boolean isMuted) {
    Log.d("MyApp", "Video Muted");
  }
});