У меня есть страница 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 ... -of-naviga