banner 基类统一设置
This commit is contained in:
parent
ec9dabdc0e
commit
b5fc00b996
|
|
@ -1,7 +1,5 @@
|
|||
package com.gamedog.vididin.main
|
||||
|
||||
|
||||
|
||||
import android.app.Activity
|
||||
import android.content.Intent
|
||||
import android.content.IntentFilter
|
||||
|
|
@ -13,7 +11,6 @@ import androidx.viewpager2.widget.ViewPager2
|
|||
import android.view.LayoutInflater
|
||||
import androidx.activity.addCallback
|
||||
import androidx.activity.viewModels
|
||||
import androidx.lifecycle.lifecycleScope
|
||||
import com.ama.core.architecture.appBase.AppViewsActivity
|
||||
import com.ama.core.architecture.appBase.OnFragmentBackgroundListener
|
||||
import com.ama.core.architecture.ext.toast
|
||||
|
|
@ -29,10 +26,7 @@ import com.gamedog.vididin.adapter.MainViewPagerAdapter
|
|||
import com.gamedog.vididin.main.fragments.task.DailySignSuccessDialog
|
||||
import com.gamedog.vididin.main.interfaces.OnTabStyleListener
|
||||
import com.gamedog.vididin.manager.DateChangeReceiver
|
||||
import com.remax.bill.ads.AdResult
|
||||
import com.remax.bill.ads.ext.AdShowExt
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import kotlinx.coroutines.launch
|
||||
import kotlin.getValue
|
||||
import com.vididin.real.money.game.databinding.ActivityMainBinding as ViewBinding
|
||||
import com.gamedog.vididin.main.MainUiState as UiState
|
||||
|
|
@ -59,8 +53,6 @@ class MainActivity : AppViewsActivity<ViewBinding, UiState, ViewModel>(), OnTabS
|
|||
|
||||
|
||||
override fun ViewBinding.initViews() {
|
||||
enableBannerAd(binding.adContainer)
|
||||
|
||||
navigatorAdapter = MainTabsAdapter(
|
||||
this@MainActivity, viewPager2, fragmentStateAdapter, magicIndicator
|
||||
)
|
||||
|
|
|
|||
|
|
@ -24,17 +24,17 @@
|
|||
},
|
||||
"paid": {
|
||||
"app_open": {
|
||||
"max_daily_show": 20,
|
||||
"max_daily_show": 200,
|
||||
"max_daily_click": 10,
|
||||
"min_interval": 0
|
||||
},
|
||||
"interstitial": {
|
||||
"max_daily_show": 20,
|
||||
"max_daily_show": 200,
|
||||
"max_daily_click": 10,
|
||||
"min_interval": 0
|
||||
},
|
||||
"native": {
|
||||
"max_daily_show": 20,
|
||||
"max_daily_show": 200,
|
||||
"max_daily_click": 10,
|
||||
"min_interval": 0
|
||||
},
|
||||
|
|
|
|||
|
|
@ -10,9 +10,6 @@ import com.ama.core.architecture.base.views.BaseViewsActivity
|
|||
import com.ama.core.architecture.util.eventbus.NotifyMan
|
||||
import com.ama.core.architecture.util.state.createAppStateView
|
||||
import com.ama.core.designsystem.widget.interfaces.LoadingDialog
|
||||
import com.remax.bill.ads.AdResult
|
||||
import com.remax.bill.ads.ext.AdShowExt
|
||||
import kotlinx.coroutines.launch
|
||||
|
||||
|
||||
abstract class AppViewsActivity<Binding : ViewBinding, UiState : Any, ViewModel : BaseViewModel<UiState>> :
|
||||
|
|
@ -34,10 +31,6 @@ abstract class AppViewsActivity<Binding : ViewBinding, UiState : Any, ViewModel
|
|||
NotifyMan.instance().register(mEventCallback, *eventTypes)
|
||||
}
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
tryShowAdBanner()
|
||||
}
|
||||
|
||||
override fun onDestroy() {
|
||||
super.onDestroy()
|
||||
|
|
@ -70,33 +63,4 @@ abstract class AppViewsActivity<Binding : ViewBinding, UiState : Any, ViewModel
|
|||
}
|
||||
|
||||
|
||||
private var mAdContainer: ViewGroup? = null
|
||||
|
||||
fun tryShowAdBanner() {
|
||||
mAdContainer?.let {
|
||||
lifecycleScope.launch {
|
||||
try {
|
||||
when (AdShowExt.showBannerAd(this@AppViewsActivity, it)) {
|
||||
is AdResult.Success<*> -> {
|
||||
|
||||
}
|
||||
|
||||
is AdResult.Failure -> {
|
||||
|
||||
}
|
||||
|
||||
AdResult.Loading -> {
|
||||
}
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected fun enableBannerAd(adContainer: ViewGroup) {
|
||||
mAdContainer = adContainer
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -2,7 +2,6 @@ package com.ama.core.architecture.base.views
|
|||
|
||||
import android.content.Intent
|
||||
import android.os.Bundle
|
||||
import android.view.Gravity
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.FrameLayout
|
||||
|
|
@ -25,6 +24,8 @@ import com.ama.core.architecture.stateview.interfaces.DefaultStateViewManager
|
|||
import com.ama.core.architecture.stateview.util.initLoadStateUiStateCollect
|
||||
import com.ama.core.designsystem.widget.interfaces.LoadingDialog
|
||||
import com.ama.core.designsystem.widget.interfaces.StateView
|
||||
import com.remax.bill.ads.AdResult
|
||||
import com.remax.bill.ads.ext.AdShowExt
|
||||
import kotlinx.coroutines.launch
|
||||
|
||||
|
||||
|
|
@ -33,6 +34,7 @@ abstract class BaseViewsActivity<Binding : ViewBinding, UiState : Any,
|
|||
ViewModel : BaseViewModel<UiState>> :
|
||||
BaseActivity(), ViewBindingActivity<Binding, UiState>, ViewModelOwner<UiState, ViewModel>, DefaultStateViewManager, MessageCollectorOwner {
|
||||
private lateinit var mFinalRootView: ViewGroup
|
||||
private var mAdContainer: ViewGroup? = null
|
||||
protected open var mEnableBannerAd = true
|
||||
|
||||
override val binding: Binding by lazy { inflateViewBinding(layoutInflater) }
|
||||
|
|
@ -71,8 +73,36 @@ abstract class BaseViewsActivity<Binding : ViewBinding, UiState : Any,
|
|||
binding.initListeners()
|
||||
binding.initBaseObservers()
|
||||
binding.initObservers()
|
||||
|
||||
tryShowBannerAd()
|
||||
}
|
||||
|
||||
private fun tryShowBannerAd() {
|
||||
if (mEnableBannerAd) {
|
||||
mAdContainer?.let {
|
||||
lifecycleScope.launch {
|
||||
try {
|
||||
when (AdShowExt.showBannerAd(this@BaseViewsActivity, it)) {
|
||||
is AdResult.Success<*> -> {
|
||||
|
||||
}
|
||||
|
||||
is AdResult.Failure -> {
|
||||
|
||||
}
|
||||
|
||||
AdResult.Loading -> {
|
||||
}
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
override fun readIntent(intent: Intent) {
|
||||
|
||||
}
|
||||
|
|
@ -128,17 +158,17 @@ abstract class BaseViewsActivity<Binding : ViewBinding, UiState : Any,
|
|||
private fun getContentView(): View {
|
||||
if (mEnableBannerAd) {
|
||||
mFinalRootView = RelativeLayout(this)
|
||||
val adContainer = FrameLayout(this).apply {
|
||||
layoutParams = RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,100).apply {
|
||||
mAdContainer = FrameLayout(this).apply {
|
||||
layoutParams = RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.WRAP_CONTENT).apply {
|
||||
addRule(RelativeLayout.ALIGN_PARENT_BOTTOM)
|
||||
}
|
||||
setBackgroundResource(R.color.gray_3)
|
||||
id = ViewCompat.generateViewId()
|
||||
}
|
||||
mFinalRootView.addView(adContainer)
|
||||
mFinalRootView.addView(mAdContainer)
|
||||
|
||||
val bindingRootLayoutParams = RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.MATCH_PARENT).apply {
|
||||
addRule(RelativeLayout.ABOVE, adContainer.id)
|
||||
addRule(RelativeLayout.ABOVE, mAdContainer!!.id)
|
||||
}
|
||||
mFinalRootView.addView(binding.root, bindingRootLayoutParams)
|
||||
} else {
|
||||
|
|
@ -147,10 +177,5 @@ abstract class BaseViewsActivity<Binding : ViewBinding, UiState : Any,
|
|||
return mFinalRootView
|
||||
}
|
||||
|
||||
private fun addShowAdView() {
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Reference in New Issue