Commit 1d1246a4 authored by leichao.gao's avatar leichao.gao

广告dialog优化

parent aac77a51
...@@ -314,30 +314,32 @@ object AdmobUtils { ...@@ -314,30 +314,32 @@ object AdmobUtils {
} }
} }
private fun showIntervalDialogAndShowAd( private var customDialog: CustomDialog? = null
activity: Activity,
isLoadAdNow: Boolean, private fun showIntervalDialogAndShowAd(activity: Activity, isLoadAdNow: Boolean, onHidden: (() -> Unit)?, interval: Int) {
onHidden: (() -> Unit)?, if (customDialog != null && customDialog?.isShowing == true) {
interval: Int return // 如果对话框已经显示,则不再显示
) { }
val customDialog = CustomDialog(activity, R.layout.dialog_ad_loading)
customDialog.setCountdownText(R.id.dialog_ad_loading_text) customDialog = CustomDialog(activity, R.layout.dialog_ad_loading)
customDialog?.setCountdownText(R.id.dialog_ad_loading_text)
val countdownTimer = object : CountDownTimer((interval * 1000).toLong(), 1000) { val countdownTimer = object : CountDownTimer((interval * 1000).toLong(), 1000) {
override fun onTick(millisUntilFinished: Long) { override fun onTick(millisUntilFinished: Long) {
val seconds = (millisUntilFinished / 1000).toInt() val seconds = (millisUntilFinished / 1000).toInt()
customDialog.updateCountdownText("Advertising in preparation ($seconds" + "s)...") customDialog?.updateCountdownText("Advertising in preparation ($seconds" + "s)...")
} }
override fun onFinish() { override fun onFinish() {
showCachedInterstitialAd(activity, isLoadAdNow, onHidden) showCachedInterstitialAd(activity, isLoadAdNow, onHidden)
customDialog?.dismiss() customDialog?.dismiss()
customDialog.dismiss() customDialog = null
} }
} }
countdownTimer.start() countdownTimer.start()
customDialog.show() customDialog?.show()
} }
private fun showCachedInterstitialAd( private fun showCachedInterstitialAd(
activity: Activity, activity: Activity,
isLoadAdNow: Boolean, isLoadAdNow: Boolean,
...@@ -363,8 +365,12 @@ object AdmobUtils { ...@@ -363,8 +365,12 @@ object AdmobUtils {
onHidden: (() -> Unit)? onHidden: (() -> Unit)?
) { ) {
var mDialog: Dialog? = null var mDialog: Dialog? = null
if (!activity.isFinishing && !activity.isDestroyed) {
mDialog = CustomDialog(activity, R.layout.dialog_ad_loading) mDialog = CustomDialog(activity, R.layout.dialog_ad_loading)
mDialog.show() // 设置对话框的样式和内容
mDialog?.show()
}
loadInterstitialAd(activity) { loadInterstitialAd(activity) {
mDialog?.dismiss() mDialog?.dismiss()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment