报告连续播放

适用于 Android 的 IMA SDK 允许为广告请求设置连续播放上下文。 setContinuousPlayback() 方法会通知 SDK 播放器是否打算连续播放内容视频(类似于电视广播)。如果设置为 true,从请求返回的广告就是广告服务器指定为适合连续播放的广告。如果不调用此方法,会使设置保持为未知状态。 以下示例演示了如何在广告请求中设置连续播放。
AdsRequest request = mSdkFactory.createAdsRequest();
request.setAdTagUrl(adTagUrl);
request.setContinuousPlayback(true);
adsLoader.requestAds(request);
对于使用 Exoplayer-IMA 扩展程序(2.13 版或更高版本)或实现该扩展程序的 BasicExample 的用户,以下示例展示了如何设置连续播放。
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_my);

    playerView = findViewById(R.id.player_view);

    ImaAdsLoader.Builder builder = new ImaAdsLoader.Builder(this).setContinuousPlayback(true);
    adsLoader = builder.build();
}

连续播放与广告自动播放的区别

IMA SDK for Android 还支持设置播放器是自动开始播放,还是等待用户操作开始播放。此操作可通过使用 setAdWillAutoPlay() 方法完成。如果设置为 true,则返回的广告是广告服务器指定为适合自动播放环境的广告。

下表根据与广告匹配的视频内容,详细说明了何时应请求广告实现连续播放和自动播放。

视频内容 setContinuousPlayback() 的参数 setAdWillAutoPlay() 的参数
在用户互动时播放的单个内容视频 false false
自动播放的单个内容视频 false true
一个视频播放列表,在用户互动时播放第一个视频,但自动播放后续视频 true false
自动播放第一个视频并自动播放后续视频的视频播放列表 true true