diff --git a/app/src/main/java/com/gh/gamecenter/MainActivity.java b/app/src/main/java/com/gh/gamecenter/MainActivity.java index 88e89da1f1..05930ccc9d 100644 --- a/app/src/main/java/com/gh/gamecenter/MainActivity.java +++ b/app/src/main/java/com/gh/gamecenter/MainActivity.java @@ -73,7 +73,6 @@ import com.gh.gamecenter.common.base.fragment.ToolbarFragment; import com.gh.gamecenter.common.constant.CommonConsts; import com.gh.gamecenter.common.constant.Constants; import com.gh.gamecenter.common.constant.EntranceConsts; -import com.gh.gamecenter.common.entity.NotificationUgc; import com.gh.gamecenter.common.entity.SuggestType; import com.gh.gamecenter.common.eventbus.EBNetworkState; import com.gh.gamecenter.common.eventbus.EBReuse; @@ -83,7 +82,6 @@ import com.gh.gamecenter.common.retrofit.Response; import com.gh.gamecenter.common.utils.DialogHelper; import com.gh.gamecenter.common.utils.ExtensionsKt; import com.gh.gamecenter.common.utils.NewFlatLogUtils; -import com.gh.gamecenter.common.utils.NotificationHelper; import com.gh.gamecenter.common.utils.SensorsBridge; import com.gh.gamecenter.common.utils.ShareUtils; import com.gh.gamecenter.core.AppExecutor; @@ -105,7 +103,6 @@ import com.gh.gamecenter.home.skip.PackageSkipActivity; import com.gh.gamecenter.login.user.UserManager; import com.gh.gamecenter.login.utils.QuickLoginHelper; import com.gh.gamecenter.manager.DataCollectionManager; -import com.gh.gamecenter.manager.UpdateManager; import com.gh.gamecenter.packagehelper.PackageViewModel; import com.gh.gamecenter.retrofit.RetrofitManager; import com.gh.gamecenter.room.AppDatabase; diff --git a/module_common/src/main/java/com/gh/gamecenter/common/dialog/NotificationHintDialogFragment.kt b/module_common/src/main/java/com/gh/gamecenter/common/dialog/NotificationHintDialogFragment.kt index ad1041c1b2..be5bfe27b7 100644 --- a/module_common/src/main/java/com/gh/gamecenter/common/dialog/NotificationHintDialogFragment.kt +++ b/module_common/src/main/java/com/gh/gamecenter/common/dialog/NotificationHintDialogFragment.kt @@ -2,6 +2,7 @@ package com.gh.gamecenter.common.dialog import android.annotation.SuppressLint import android.content.ActivityNotFoundException +import android.content.DialogInterface import android.content.Intent import android.os.Build import android.os.Bundle @@ -32,6 +33,7 @@ import kotlin.random.Random class NotificationHintDialogFragment : BaseDialogFragment() { private var mNotificationUgc: NotificationUgc? = null + private var mDismissCallback: (() -> Unit)? = null private val mBinding: DialogNotificationHintBinding by lazy { DialogNotificationHintBinding.inflate(layoutInflater) } override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { @@ -102,6 +104,12 @@ class NotificationHintDialogFragment : BaseDialogFragment() { dialog?.setCanceledOnTouchOutside(true) } + override fun onDismiss(dialog: DialogInterface) { + super.onDismiss(dialog) + + mDismissCallback?.invoke() + } + private fun getJsonFromAssets(): String { val stringBuilder = StringBuilder() var bufferedReader: BufferedReader? = null @@ -124,8 +132,9 @@ class NotificationHintDialogFragment : BaseDialogFragment() { companion object { @JvmStatic - fun getInstance(ugc: NotificationUgc) = NotificationHintDialogFragment().apply { + fun getInstance(ugc: NotificationUgc, dismissCallback: () -> Unit) = NotificationHintDialogFragment().apply { mNotificationUgc = ugc + mDismissCallback = dismissCallback } } } diff --git a/module_common/src/main/java/com/gh/gamecenter/common/utils/NotificationHelper.kt b/module_common/src/main/java/com/gh/gamecenter/common/utils/NotificationHelper.kt index 1ad5f57829..a2fc9b5c70 100644 --- a/module_common/src/main/java/com/gh/gamecenter/common/utils/NotificationHelper.kt +++ b/module_common/src/main/java/com/gh/gamecenter/common/utils/NotificationHelper.kt @@ -164,9 +164,12 @@ object NotificationHelper { Utils.log("notification is enable") callBack?.invoke(false) } else { - callBack?.invoke(true) if (activity.supportFragmentManager.isStateSaved) return - NotificationHintDialogFragment.getInstance(ugc).show(activity.supportFragmentManager, "notification") + NotificationHintDialogFragment + .getInstance(ugc) { + callBack?.invoke(true) + } + .show(activity.supportFragmentManager, "notification") } }