首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >谷歌广告广告在斯提图伊不起作用

谷歌广告广告在斯提图伊不起作用
EN

Stack Overflow用户
提问于 2021-06-07 11:26:30
回答 1查看 736关注 0票数 0

我在我的SwiftUI应用程序中更新了Google 7*到v-8*。更新后,我将面临这些代表横幅广告的错误。

我的代码是

代码语言:javascript
复制
struct GADBannerViewControllerForSpeedometer: UIViewControllerRepresentable {
func makeUIViewController(context: Context) -> UIViewController {
    
    
    let view = GADBannerView(adSize: kGADAdSizeBanner) // *Error: Cannot find 'GADBannerView' in scope*
    let viewController = UIViewController()
    //https://developers.google.com/admob/android/test-ads#sample_ad_units
    view.adUnitID = "ca-app-pub-3940256099942544/2934735716"
    view.rootViewController = viewController
    viewController.view.addSubview(view)
    viewController.view.frame = CGRect(origin: .zero, size: kGADAdSizeBanner.size) // *Error: Cannot find 'kGADAdSizeBanner' in scope*
    view.load(GADRequest()) // *Error: Cannot find 'GADRequest' in scope*
    return viewController
}

func updateUIViewController(_ uiViewController: UIViewController, context: Context) {} 
}

我没有找到任何解决方案,事实上,google文档很难实现这个新的变化。

EN

回答 1

Stack Overflow用户

发布于 2021-09-18 17:40:45

代码语言:javascript
复制
final class BannerVC: UIViewControllerRepresentable  {
        
        init(size: CGSize) {
            self.size = size
        }
        var size: CGSize

        func makeUIViewController(context: Context) -> UIViewController {
            let view = GADBannerView(adSize: GADAdSizeFromCGSize(size))
            let viewController = UIViewController()
            view.adUnitID = "..."
            view.rootViewController = viewController
            viewController.view.addSubview(view)
            viewController.view.frame = CGRect(origin: .zero, size: size)
            
            
            ATTrackingManager.requestTrackingAuthorization(completionHandler: { status in
                let gadRequest = GADRequest()
                DispatchQueue.main.async {
                    gadRequest.scene = UIApplication.shared.connectedScenes.first as? UIWindowScene
                }
                view.load(gadRequest)
            })
            return viewController
        }
        func updateUIViewController(_ uiViewController: UIViewController, context: Context) {}
    }

在需要的地方实现横幅

代码语言:javascript
复制
BannerVC(size: CGSize(width: UIScreen.main.bounds.width, height: 60))
        .frame(width: UIScreen.main.bounds.width,
               height: 60,
               alignment: .center)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67870764

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档