MediaContent
Yerel reklamlar, video veya resim olabilecek medya içeriği hakkında bilgi almak için kullanılan birMediaContent
nesnesine erişim sağlar. Ayrıca video reklam oynatmayı kontrol etmek ve oynatma etkinliklerini dinlemek için de kullanılır. NativeAd.getMediaContent()
işlevini çağırarak MediaContent
nesnesini elde edebilirsiniz.
MediaContent
nesnesi, videonun en-boy oranı ve süresi gibi bilgileri içerir. Aşağıdaki snippet'te, yerel reklamın en-boy oranının ve süresinin nasıl alınacağı gösterilmektedir.
Java
if (nativeAd.getMediaContent() != null) {
MediaContent mediaContent = nativeAd.getMediaContent();
float mediaAspectRatio = mediaContent.getAspectRatio();
if (mediaContent.hasVideoContent()) {
float duration = mediaContent.getDuration();
}
}
Kotlin
nativeAd.mediaContent?.let { mediaContent ->
val mediaAspectRatio: Float = mediaContent.aspectRatio
if (mediaContent.hasVideoContent()) {
val duration: Float = mediaContent.duration
}
}
Video etkinlikleri için geri çağırmalar
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()
çağrısı yapın. Ardından, yalnızca önem verdiğiniz geri çağırmaları geçersiz kılın.
Java
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 + ".");
}
});
}
}
Kotlin
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