主题
插屏 —— NovvyInterstitialAd
「一次性、全屏」广告,用法与激励视频完全一致,唯一区别是没有 didEarnReward 奖励回调。
对接流程
setContentContext(...) // 短剧场景必需
↓
NovvyInterstitialAd(adUnitId:)
↓
load() → interstitialAdDidLoad // 就绪(或 didFailToLoadWithError)
↓
show(from: vc) → interstitialAdDidShow
↓
interstitialAdDidClose // 自动释放接入代码
swift
let interstitialAd = NovvyInterstitialAd(adUnitId: "your_ad_unit_id")
interstitialAd.delegate = self
interstitialAd.load()
// MARK: - NovvyInterstitialAdDelegate
func interstitialAdDidLoad(_ ad: NovvyInterstitialAd) {
ad.show(from: viewController) // 就绪后展示
}
func interstitialAd(_ ad: NovvyInterstitialAd, didFailToLoadWithError error: NovvyError) { /* ... */ }
func interstitialAdDidShow(_ ad: NovvyInterstitialAd) { /* 已展示 */ }
func interstitialAdDidClose(_ ad: NovvyInterstitialAd) { /* 关闭,自动释放 */ }isReady / show(from:) / destroy() 语义同激励视频。
事件回调
NovvyInterstitialAdDelegate 中 interstitialAdDidLoad / didFailToLoadWithError 需实现,其余有默认空实现;回调统一在主线程触发。
| 回调 | 触发时机 |
|---|---|
interstitialAdDidLoad(ad) | 广告及素材已就绪,可展示 |
interstitialAd(ad, didFailToLoadWithError:) | 加载失败,error 取值见错误类型 |
interstitialAdDidShow(ad) | 广告已展示(不代表曝光已上报,见回调与曝光) |
interstitialAdDidClose(ad) | 广告关闭,已加载状态自动释放 |