【问题标题】:How show interstitial ads by number of clicks (google_mobile_ads)如何按点击次数显示插页式广告 (google_mobile_ads)
【发布时间】:2021-04-12 20:02:19
【问题描述】:

我想在 10 次点击后展示插页式广告。有没有办法做到这一点?或者我如何在应用程序打开时只显示 1 次?我只是想知道如何使用它。

 ElevatedButton(
          child: Text("Ads"),
          onPressed: () {
            _interstitialAd.show();
            Navigator.push(context,
                MaterialPageRoute(builder: (context) => PageTwo()));
          },
        ),

【问题讨论】:

    标签: flutter admob googlemobileads


    【解决方案1】:

    您需要在某处保持一个计数器,并调用该方法仅在它是 10 的倍数时显示广告。

    //A field of your state class
    int counter = 0;
    
    //...somewhere in build
    ElevatedButton(
      child: Text("Ads"),
      onPressed: () {
        if(counter%10 == 0) {
          _interstitialAd.show();
        }
    
        counter++;
        Navigator.push(context,
          MaterialPageRoute(builder: (context) => PageTwo()));
      },
    ),
    

    【讨论】:

    • 非常感谢。但我不明白,我是新程序员。为什么你使用 counter%10==0 counter == 10 _interstitialAd.show(); 之间有什么区别?
    • @regenin 好问题!因此,您建议的广告只会显示 一次。计数器将从 0 开始,用户将点击 10 次,并且仅在计数器为 10 时才会显示广告。计数器将继续为 11、12 等,因为他们点击的次数越多,广告将不再显示。 % 运算符是模运算符。如果counter 除以10,您可以将其视为获得余数。这样,广告将显示为计数器计数最多为 0、10、20、30 等,因为当计数器为这些值时将没有余数。
    • 非常感谢您为我解释。如果我尝试这种方法,我想知道我是否可以达到相同的结果: if (counter == 10) _interstitialAd.show();计数器 = 0 } 计数器++;
    • @regenin 是的,几乎一样,唯一的区别是第一次点击按钮时,广告不显示。
    • 再次感谢您。多亏了你,我学会了一种新方法。祝你有美好的一天。
    猜你喜欢
    • 1970-01-01
    • 2020-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多