我在SwiftUI中集成插页式广告时遇到问题。
创建插页式广告对象后,我不知道要运行它。有人能帮我吗 ?
class ViewController: UIViewController {
var interstitial: GADInterstitial!
override func viewDidLoad() {
super.viewDidLoad()
interstitial = GADInterstitial(adUnitID: "ca-app-pub-3940256099942544/4411468910")
let request = GADRequest()
interstitial.load(request)
}
}
使用未解析的标识符'interstitial'
if interstitial.isReady {
interstitial.present(fromRootViewController: self)
} else {
print("Ad wasn't ready")
}
回显Google AdMob integration in SwiftUI的另一个请求。
我想添加广告事件,例如
extension UIViewController: GADBannerViewDelegate {
public func adViewDidReceiveAd(_ bannerView: GADBannerView) {
print("ok ad")
}
public func adView(_ bannerView: GADBannerView, didFailToReceiveAdWithError error: GADRequestError) {
print("fail ad")
print(error)
}
}
但我不能添加
view.delegate = self
在UIViewControllerRepresentable结构中
从struct
更改为final class
:
final class GADBannerViewController: UIViewControllerRepresentable
然后让Coordinator
实现GADBannerViewDelegate
。
func makeCoordinator() -> GADBannerViewController.Coordinator
{
Coordinator(self)
}
以上假设Coordinator
在GADBannerViewController
内部。
最后您需要Coordinator
:
class Coordinator: GADBannerViewDelegate
{
...
}
class Coordinator