تبلیغات ویدیویی بومی

پلتفرم را انتخاب کنید: Android iOS

MediaContent

تبلیغات بومی دسترسی به یک شی MediaContent را فراهم می کند که برای دریافت اطلاعات در مورد محتوای رسانه، که می تواند ویدیو یا تصویر باشد، استفاده می شود. همچنین برای کنترل پخش آگهی ویدیویی و گوش دادن به رویدادهای پخش استفاده می شود. می توانید با فراخوانی NativeAd.getMediaContent() شی MediaContent را بدست آورید.

شی MediaContent حاوی اطلاعاتی مانند نسبت ابعاد و مدت یک ویدیو است. قطعه زیر نشان می دهد که چگونه نسبت ابعاد و مدت زمان یک تبلیغ بومی را بدست آوریم.

جاوا

if (nativeAd.getMediaContent() != null) {
  MediaContent mediaContent = nativeAd.getMediaContent();
  float mediaAspectRatio = mediaContent.getAspectRatio();
  if (mediaContent.hasVideoContent()) {
    float duration = mediaContent.getDuration();
  }
}

کاتلین

nativeAd.mediaContent?.let { mediaContent ->
  val mediaAspectRatio: Float = mediaContent.aspectRatio
  if (mediaContent.hasVideoContent()) {
    val duration: Float = mediaContent.duration
  }
}

پاسخ به تماس برای رویدادهای ویدیویی

برای مدیریت رویدادهای ویدیویی خاص، کلاسی بنویسید که کلاس VideoLifecycleCallbacks انتزاعی را گسترش دهد و setVideoLifecycleCallbacks() در VideoController فراخوانی کنید. سپس، فقط تماس‌هایی را که برایتان مهم هستند لغو کنید.

جاوا

if (nativeAd.getMediaContent() != null) {
  VideoController videoController = nativeAd.getMediaContent().getVideoController();
  if (videoController != null) {
    videoController.setVideoLifecycleCallbacks(
        new VideoController.VideoLifecycleCallbacks() {
          @Override
          public void onVideoStart() {
            Log.d(TAG, "Video started.");
          }

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

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

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

          @Override
          public void onVideoMute(boolean isMuted) {
            Log.d(TAG, "Video isMuted: " + isMuted + ".");
          }
        });
  }
}

کاتلین

val videoLifecycleCallbacks =
  object : VideoController.VideoLifecycleCallbacks() {
    override fun onVideoStart() {
      Log.d(TAG, "Video started.")
    }

    override fun onVideoPlay() {
      Log.d(TAG, "Video played.")
    }

    override fun onVideoPause() {
      Log.d(TAG, "Video paused.")
    }

    override fun onVideoEnd() {
      Log.d(TAG, "Video ended.")
    }

    override fun onVideoMute(isMuted: Boolean) {
      Log.d(TAG, "Video isMuted: $isMuted.")
    }
  }
nativeAd.mediaContent?.videoController?.videoLifecycleCallbacks = videoLifecycleCallbacks