Как показывать рекламные объявления каждые 20 секунд в Котлине? - PullRequest
0 голосов
/ 10 июля 2019

Как показывать промежуточную рекламу каждые 20 секунд в Kotlin?

Я использовал эти шаги для загрузки рекламы через 20 секунд. Я хочу загружать рекламу каждые 20 секунд в моем приложении, пожалуйста, помогите

    //ads

    // Sample AdMob app ID: ca-app-pub-3940256099942544~3347511713
    MobileAds.initialize(this, "ca-app-pub-3940256099942544~3347511713")
    mAdView = findViewById(R.id.adView)
    val adRequest = AdRequest.Builder().build()
    mAdView.loadAd(adRequest)
    mInterstitialAd = InterstitialAd(this)
    mInterstitialAd.adUnitId = "ca-app-pub-3940256099942544/1033173712"
    mInterstitialAd.loadAd(AdRequest.Builder().build())

    val adsHandler = object : Handler(Looper.getMainLooper()){
        override fun handleMessage(msg: Message?) {
            mInterstitialAd.show()
        }
    }

    fun scheduleAd(){
        adsHandler.sendEmptyMessageDelayed(0, 20)
    }
    mInterstitialAd.setAdListener(object : AdListener() {
        override fun onAdLoaded() {
            scheduleAd()
        }

        override fun onAdClosed() {
            // reschedule
            scheduleAd()
        }
    })

    fun loadAd() {
        adsHandler.post {
            mInterstitialAd.loadAd(AdRequest.Builder().build())
            adsHandler.postDelayed(refresh, 20 * 1000) //called every 20 seconds
        }
    }
    //ads over

1 Ответ

0 голосов
/ 10 июля 2019

Вы можете использовать

private val refresh = Runnable { loadAd() }

private fun loadAd() {
        adsHandler.post {
            mInterstitialAd.loadAd(AdRequest.Builder().build())
            adsHandler.postDelayed(refresh, 20 * 1000) //called every 20 seconds
        }
}

, и вы можете запустить свой таймер с loadAd()

...