MediaContent
Os anúncios nativos e os formatos personalizados de anúncios nativos oferecem acesso a um objetoMediaContent
usado para receber informações sobre conteúdo de mídia, que pode ser
um vídeo ou uma imagem. Ele também é usado para controlar a reprodução de anúncios em vídeo e detectar
eventos de reprodução. Para conseguir o objeto MediaContent
, chame
NativeAd.getMediaContent()
.
O objeto MediaContent
contém informações como a proporção e
a duração de um vídeo. O snippet a seguir mostra como conseguir a proporção e
a duração de um anúncio nativo.
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();
// ...
}
Callbacks para eventos de vídeo
Para processar eventos de vídeo específicos, escreva uma classe que estenda a classe
VideoLifecycleCallbacks
abstrata e chame
setVideoLifecycleCallbacks()
no VideoController
. Em seguida, substitua apenas os callbacks que você quer.
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");
}
});