所有活动的全局 AdView

问题描述 投票:0回答:1

我想最终找到解决我将在这里描述的“问题”的方法。

我在 Android 应用中使用 AdMob 广告。我按照以下推荐的方式创建它们:

override fun initAds(activity: Activity, adLayout: LinearLayout) {
    adLayout.removeAllViews()
    val uiAdView = AdView(activity)
    uiAdView.setAdSize(getAdSize(activity))
    uiAdView.adUnitId = // AD UNIT ID HERE
    adLayout.addView(uiAdView)
    uiAdView.loadAd(prepareAdRequest()) 
}

这样,广告就会按预期加载 - 几秒钟后,广告就会显示出来(加载广告需要一些时间)。但是,如果我转到另一个活动,过程是相同的,因此有几秒钟广告不会显示。有人可以提供更好的方法来解决这个问题吗?所有 AdMob 指南或多或少都建议使用我所描述的方法,但我怀疑这是处理广告的最佳方法。

我考虑过将 initAds 放入应用程序(单例)类中,使其在任何地方都可用,这样我就可以为不同的活动获取相同的 adView。但是,AdView 创建需要上下文,因此这是行不通的。

另一种方法是使用片段完全重新实现应用程序,并且只有一个 Activity,这将创建 AdView,但是我无法重新实现整个应用程序。谢谢您的想法和建议。

android kotlin admob ads
1个回答
0
投票

我的方法是一样的。如果您将整个应用程序重新实现为具有多个片段的单个活动,那么您将面临同样的问题。或者您可以将所有横幅放在主要活动中...

© www.soinside.com 2019 - 2024. All rights reserved.