主题
片尾 —— NovvyEndAd
全屏、可预加载,在剧集播放结束后展示。用法与中插一致,仅语义与回调类型不同(NovvyEndAdListener)。
对接流程
Episode starts(本集开始播放)
↓
setContentContext(...) // series/episode
↓
NovvyEndAd(adUnitId) + load()
↓
onAdLoaded // 就绪(或 onAdFailedToLoad)
↓
本集播放结束 → show(activity) → onAdShown
↓
onAdClosed // 自动释放接入代码
kotlin
val endAd = NovvyEndAd(adUnitId = "your_ad_unit_id")
endAd.load(object : NovvyEndAdListener {
override fun onAdLoaded(ad: NovvyEndAd) { ad.show(activity) }
override fun onAdFailedToLoad(ad: NovvyEndAd, error: NovvyError) { /* ... */ }
override fun onAdShown(ad: NovvyEndAd) { /* 已展示 */ }
override fun onAdClosed(ad: NovvyEndAd) { /* 关闭 */ }
})关闭后自动释放;未展示即放弃时调用 endAd.destroy()。
事件回调
NovvyEndAdListener 方法均有空实现默认值,按需重写;回调统一在主线程触发。
| 回调 | 触发时机 |
|---|---|
onAdLoaded(ad) | 广告及素材已就绪,可展示 |
onAdFailedToLoad(ad, error) | 加载失败,error 为 NovvyError,取值见错误类型 |
onAdShown(ad) | 广告展示、曝光上报完成 |
onAdClosed(ad) | 广告关闭,已加载状态自动释放 |