MediaContent
تبلیغات بومی دسترسی به یک شیMediaContent
را فراهم می کند که برای دریافت اطلاعات در مورد محتوای رسانه، که می تواند ویدیو یا تصویر باشد، استفاده می شود. همچنین برای کنترل پخش آگهی ویدیویی و گوش دادن به رویدادهای پخش استفاده می شود. می توانید با فراخوانی NativeAd.getMediaContent()
شی MediaContent
را بدست آورید. شی MediaContent
حاوی اطلاعاتی مانند نسبت ابعاد و مدت یک ویدیو است. قطعه زیر نشان می دهد که چگونه نسبت ابعاد و مدت زمان یک تبلیغ بومی را بدست آوریم.
if (myNativeAd.mediaContent.hasVideoContent) {
val mediaAspectRatio: Float = myNativeAd.mediaContent.aspectRatio
val duration: Float = myNativeAd.mediaContent.duration
// ...
}
if (myNativeAd.getMediaContent().getHasVideoContent()) {
float mediaAspectRatio = myNativeAd.getMediaContent().getAspectRatio();
float duration = myNativeAd.getMediaContent().getDuration();
// ...
}
پاسخ به تماس برای رویدادهای ویدیویی
برای مدیریت رویدادهای ویدیویی خاص، کلاسی بنویسید که کلاس VideoLifecycleCallbacks
انتزاعی را گسترش دهد و setVideoLifecycleCallbacks()
در VideoController
فراخوانی کنید. سپس، فقط تماسهایی را که برایتان مهم هستند لغو کنید.
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")
}
}
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");
}
});
MediaContent
تبلیغات بومی دسترسی به یک شیMediaContent
را فراهم می کند که برای دریافت اطلاعات در مورد محتوای رسانه، که می تواند ویدیو یا تصویر باشد، استفاده می شود. همچنین برای کنترل پخش آگهی ویدیویی و گوش دادن به رویدادهای پخش استفاده می شود. می توانید با فراخوانی NativeAd.getMediaContent()
شی MediaContent
را بدست آورید. شی MediaContent
حاوی اطلاعاتی مانند نسبت ابعاد و مدت یک ویدیو است. قطعه زیر نشان می دهد که چگونه نسبت ابعاد و مدت زمان یک تبلیغ بومی را بدست آوریم.
if (myNativeAd.mediaContent.hasVideoContent) {
val mediaAspectRatio: Float = myNativeAd.mediaContent.aspectRatio
val duration: Float = myNativeAd.mediaContent.duration
// ...
}
if (myNativeAd.getMediaContent().getHasVideoContent()) {
float mediaAspectRatio = myNativeAd.getMediaContent().getAspectRatio();
float duration = myNativeAd.getMediaContent().getDuration();
// ...
}
پاسخ به تماس برای رویدادهای ویدیویی
برای مدیریت رویدادهای ویدیویی خاص، کلاسی بنویسید که کلاس VideoLifecycleCallbacks
انتزاعی را گسترش دهد و setVideoLifecycleCallbacks()
در VideoController
فراخوانی کنید. سپس، فقط تماسهایی را که برایتان مهم هستند لغو کنید.
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")
}
}
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");
}
});