使用ExoPlayer只播放广告

💡 原文中文,约4300字,阅读约需11分钟。
📝

内容提要

ExoPlayer是一个Google开源的视频播放器,被大型应用如YouTube和Google Video使用。使用ExoPlayer播放广告可以解决原生MediaPlayer的稳定性问题。可以通过设置MediaItem或MediaSource来播放广告资源,但需要注意一些问题,如无法收到播放完毕的回调和黑屏等。广告点击跳转需要根据SDK版本进行处理。

🎯

关键要点

  • ExoPlayer是Google开源的视频播放器,被YouTube和Google Video等大型应用使用。
  • 使用ExoPlayer播放广告可以解决原生MediaPlayer的稳定性问题。
  • ExoPlayer已并入media3库中,支持多种协议和IMA。
  • 广告播放时,使用MediaItem或MediaSource设置广告资源。
  • 使用MediaItem播放广告时,无法收到播放完毕的回调,建议使用try-catch处理异常。
  • 使用MediaSource播放广告时,adTagUri必须是网络地址,需使用SDK提供的Util进行转换。
  • 在使用VAST格式时,可能会遇到NullPointerException,需降低IMA SDK版本解决。
  • 广告播放完结后可能出现黑屏,需设置shutter view背景透明。
  • 切换前后台后黑屏问题可通过将PlayerView设置为TextureView解决。
  • 广告点击跳转处理需根据SDK版本进行适配。
➡️

继续阅读