iOS IMA SDK - 关闭应用内浏览器后视频未恢复(单击了解更多后)
Posted
技术标签:
【中文标题】iOS IMA SDK - 关闭应用内浏览器后视频未恢复(单击了解更多后)【英文标题】:iOS IMA SDK - Video not resuming after closing the In-app browser (After clicking Learn More) 【发布时间】:2020-12-15 17:46:21 【问题描述】:我正在使用 IMA SDK 播放 VAST 广告。广告视频播放完美,但当我点击视频广告中的“了解更多”按钮时,会打开应用内浏览器。在该窗口中单击“完成”后,视频广告不会恢复。我应该在这里添加一些东西来恢复它吗?我相信 SDK 会处理这种情况。
【问题讨论】:
【参考方案1】:需要实现 IMAWebOpenerDelegate
...
var adsManager: IMAAdsManager!
...
extension ViewController: IMAWebOpenerDelegate
func webOpenerDidClose(inAppBrowser webOpener: NSObject!)
print("closed")
adsManager.resume()
func webOpenerDidOpen(inAppBrowser webOpener: NSObject!)
// Do something
func webOpenerWillClose(inAppBrowser webOpener: NSObject!)
// Do something
func webOpenerWillOpen(inAppBrowser webOpener: NSObject!)
// Do something
func webOpenerWillOpenExternalBrowser(_ webOpener: NSObject!)
// Do something
【讨论】:
【参考方案2】:这个想法是让用户在您的应用重新获得焦点时恢复广告。请记住,用户可能会忘记应用程序在后台,因此一旦获得焦点,用户可能会惊讶地听到应用程序发出广告。
在 IMA 播放器上添加播放按钮叠加层。
为按钮添加触发器
func playBtnPress()
// make sure adsManager is initialized
guard let adsManager = adsManager else
requestAds() // initialize adsManager
return
// resume playback if paused
if !adsManager.adPlaybackInfo.isPlaying
adsManager.resume()
3.添加IMAAdsManagerDelegate
func adsManager(_ adsManager: IMAAdsManager!, didReceive event: IMAAdEvent!)
if event.type == IMAAdEventType.LOADED
// When the SDK notifies us that ads have been loaded, play them.
// hide play button first
playButton.isHidden = true
adsManager.start()
if event.type == IMAAdEventType.RESUME
// When the SDK notifies us that ads playback has resumed from a pause
// hide play button
playButton.isHidden = true
if event.type == IMAAdEventType.PAUSE
// When the SDK notifies us that ads playback is paused
// Show play button
playButton.isHidden = false
if event.type == IMAAdEventType.TAPPED
// You can also add allow the user to tap anywhere on the Ad to resume play
if(!adsManager.adPlaybackInfo.isPlaying)
adsManager.resume()
【讨论】:
你也可以实现IMAWebOpenerDelegate
在浏览器关闭时收听恢复developers.google.com/interactive-media-ads/docs/sdks/ios/…以上是关于iOS IMA SDK - 关闭应用内浏览器后视频未恢复(单击了解更多后)的主要内容,如果未能解决你的问题,请参考以下文章
使用 admob 展示广告后,无法在 iOS 设备上的 ionic 应用程序的 iframe 内播放嵌入的 youtube 视频