ios - Admob w/Spritekit
问题描述
每次用户加载它时,我都试图在某个场景上显示一个横幅广告。我知道我必须在这里以编程方式定位它。
到目前为止我:
import GoogleMobileAds
然后我:
let BannerAd = GADBannerView(adSize: kGADAdSizeBanner)
BannerAd.frame = CGRect(x: 0, y: 0, width: 320, height: 50)
BannerAd.delegate = self
BannerAd.adUnitID = "ca-app-pub-##/##"
BannerAd.rootViewController = self
let request = GADRequest()
request.testDevices = [kGADSimulatorID, "*************************"]
BannerAd.load(request)
view?.addSubview(BannerAd)
但我收到以下错误:
无法将类型“GameOverScene”的值分配给类型“UIViewController?”
我将这段代码放在我的init中用于这个场景(这是一个gameOver场景,当玩家赢/输时我会过渡到它)。
无论如何要让这个横幅广告出现还是我需要在这里使用 UIKit?
解决方案
我相信您只需将 GADBannerViewDelegate 协议添加到您的课程中。
class GameOverScene: SKScene, GADBannerViewDelegate {
...
}
推荐阅读
- node.js - 如何使用 Vite 部署到 Heroku
- python - 这个短剪刀纸摇滚逻辑是如何工作的
- nginx - 使用 Nginx 的 MIME 类型('text/html')中的 Nextcloud 页面错误
- tinymce - 在 TinyMCE 中添加 void/singleton 元素(标签)
- bluetooth - USB 蓝牙设备无法连接到 VMware 虚拟操作系统中的其他设备
- distributed - 是否可以对事件进行建模以封装在不同时间发生的多个事情
- javascript - 如何使用 Google API、PHP 和 MySQL 在饼图中过滤日期
- regex - 如何使用bash在单词后匹配带有换行符的文本
- regex - 正则表达式:我想分隔包含一些例外的地址
- javascript - 错误:数据越界(长度=3,偏移量=32,代码=BUFFER_OVERRUN,版本=abi/5.0.7)next-js,以太坊