MediaContent
Yerel reklamlar, video veya resim gibi medya içeriği hakkında bilgi almak için kullanılanMediaContent
sınıfına ait 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.
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();
// ...
}
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.
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");
}
});