Расширенные складные баннеры медленно исчезают при смене пункта назначения навигацииAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Расширенные складные баннеры медленно исчезают при смене пункта назначения навигации

Сообщение Anonymous »

У меня есть страница 1 и страница 2. На странице 2 есть складной рекламный баннер. страница1 перейти на страницу2. Затем показ складного баннера на странице 2. Складной рекламный баннер медленно исчезает, когда я возвращаюсь со страницы 2. Этот вопрос не возникнет в двух Activity. Как решить эту проблему с навигацией. Я воспроизвел эту проблему, проверьте NavigationAdTest. Пожалуйста, помогите. У меня пока нет идей по решению
// loadBanner() on page1 that is invoked on onViewCreated()
private fun loadBanner() {
adView = AdView(requireContext())
adView!!.adUnitId = "ca-app-pub-3940256099942544/9214589741"

adView!!.setAdSize(adSize)

// Create an extra parameter that aligns the bottom of the expanded ad to
// the bottom of the bannerView.
val extras = Bundle()
extras.putString("collapsible", "bottom")

val adRequest = AdRequest.Builder()
// .addNetworkExtrasBundle(AdMobAdapter::class.java, extras)
.build()

adView!!.loadAd(adRequest)

adView!!.adListener = object : AdListener() {
override fun onAdLoaded() {
super.onAdLoaded()
binding.bannerAdContainer.removeAllViews()
binding.bannerAdContainer.addView(adView)
}
}

viewLifecycleOwner.lifecycle.addObserver(object : DefaultLifecycleObserver {

override fun onPause(owner: LifecycleOwner) {
super.onPause(owner)
adView?.pause()
Log.d(TAG, "HomeFragment onPause: adView?.pause()")
}

override fun onResume(owner: LifecycleOwner) {
super.onResume(owner)
adView?.resume()
Log.d(TAG, "HomeFragment onResume: adView?.resume()")
}

override fun onDestroy(owner: LifecycleOwner) {
adView?.destroy()
Log.d(TAG, "HomeFragment onDestroy: adView?.destroy()")
super.onDestroy(owner)
}
})
}

// loadBanner() on page2 that is invoked on onViewCreated()
private fun loadBanner() {
adView = AdView(requireContext())
adView!!.adUnitId = "ca-app-pub-3940256099942544/2014213617"

adView!!.setAdSize(adSize)

// Create an extra parameter that aligns the bottom of the expanded ad to
// the bottom of the bannerView.
val extras = Bundle()
extras.putString("collapsible", "bottom")

val adRequest = AdRequest.Builder()
.addNetworkExtrasBundle(AdMobAdapter::class.java, extras)
.build()

adView!!.loadAd(adRequest)

adView!!.adListener = object : AdListener() {
override fun onAdLoaded() {
super.onAdLoaded()
binding.bannerAdContainer.removeAllViews()
binding.bannerAdContainer.addView(adView)
}
}

viewLifecycleOwner.lifecycle.addObserver(object : DefaultLifecycleObserver {

override fun onPause(owner: LifecycleOwner) {
super.onPause(owner)
adView?.pause()
Log.d(TAG, "AccountFragment onPause: adView?.pause()")
}

override fun onResume(owner: LifecycleOwner) {
super.onResume(owner)
adView?.resume()
Log.d(TAG, "AccountFragment onResume: adView?.resume()")
}

override fun onDestroy(owner: LifecycleOwner) {
adView?.destroy()
Log.d(TAG, "AccountFragment onDestroy: adView?.destroy()")
super.onDestroy(owner)
}
})
}


Подробнее здесь: https://stackoverflow.com/questions/790 ... on-of-navi
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»