gpt4 book ai didi

ios - 在 SceneKit View 上实现 iAds

转载 作者:行者123 更新时间:2023-11-28 07:12:50 27 4
gpt4 key购买 nike

当我尝试实现 iAd 横幅广告时遇到问题。不太确定我错过了什么。我的主要 Storyboard是为 scenekit 显示设置的。我试图同时在屏幕上显示广告。我在 setupAds 函数中手动创建和添加 View ,如下所示。我还在其下方添加了委托(delegate)例程,它们正在触发,但我没有看到广告显示。

let adBannerView = ADBannerView(frame: CGRect.zeroRect)

override func viewDidLoad() {

super.viewDidLoad()
/* My other setup code here */

setupAds()
}

func setupAds() {
adBannerView.center = CGPoint(x: adBannerView.center.x, y: view.bounds.size.height - adBannerView.frame.size.height / 2)
adBannerView.delegate = self
adBannerView.hidden = true
view.addSubview(adBannerView)
}

/* My funcs to handle the splash screen and game */

// iAd delegates

func bannerViewWillLoadAd(banner: ADBannerView!) {
println("bannerViewWillLoadAd")
}
func bannerViewDidLoadAd(banner: ADBannerView!) {
self.adBannerView.alpha = 1.0
println("bannerViewDidLoadAd")
}
func bannerViewActionDidFinish(banner: ADBannerView!) {
println("bannerViewActionDidFinish")
}
func bannerViewActionShouldBegin(banner: ADBannerView!, willLeaveApplication willLeave: Bool) -> Bool {
println("bannerViewActionShouldBegin")
return true
}
func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError error: NSError!) {
println("bannerViewError")
println(error)

}

我得到的输出如下。

bannerViewWillLoadAd
bannerViewDidLoadAd
bannerViewError
Error Domain=ADErrorDomain Code=1 "Service session terminated." UserInfo=0x17466a6c0 {ADInternalErrorCode=1002, NSLocalizedDescription=Service session terminated.}

知道我在这里遗漏了什么吗?

非常感谢。

最佳答案

好的 Indrajeet 是正确的。需要添加到 super 而不是 self 。代码现在看起来像:

覆盖函数 viewDidLoad() {

    super.viewDidLoad()
super.view.addSubview(adBannerView) // This is where I needed to add the banner.

/* Other setup stuff here */

setupAds()
}

func setupAds() {
adBannerView.center = CGPoint(x: adBannerView.center.x, y: view.bounds.size.height - adBannerView.frame.size.height / 2)
adBannerView.center = CGPoint(x: view.bounds.size.width / 2, y: view.bounds.size.height - adBannerView.frame.size.height / 2)
adBannerView.delegate = self
adBannerView.hidden = true
}

// iAd delegates
func bannerViewWillLoadAd(banner: ADBannerView!) {
println("bannerViewWillLoadAd")
}
func bannerViewDidLoadAd(banner: ADBannerView!) {
banner.hidden = false
println("bannerViewDidLoadAd")
}
func bannerViewActionDidFinish(banner: ADBannerView!) {
println("bannerViewActionDidFinish")
}
func bannerViewActionShouldBegin(banner: ADBannerView!, willLeaveApplication willLeave: Bool) -> Bool {
println("bannerViewActionShouldBegin")
return true
}
func bannerView(banner: ADBannerView!, didFailToReceiveAdWithError error: NSError!) {
println("bannerViewError")
println(error)
}

这基本上允许我在 scenekit 显示的顶部添加一个标准的 iAd View 。今天的广告 - 明天的世界!

关于ios - 在 SceneKit View 上实现 iAds,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27714196/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com