From 040901f9dfd9e4ce720adce7c9eb14cb5b44743f Mon Sep 17 00:00:00 2001 From: chenjuntao Date: Wed, 30 Aug 2023 15:28:24 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E9=87=8D=E6=9E=84=E9=A6=96=E9=A1=B5?= =?UTF-8?q?=E5=BC=B9=E7=AA=97=E7=B1=BB=E5=8A=9F=E8=83=BD=E7=9A=84=E6=98=BE?= =?UTF-8?q?=E7=A4=BA=EF=BC=88=E8=B0=83=E6=95=B4=E9=80=9A=E7=9F=A5=E6=9D=83?= =?UTF-8?q?=E9=99=90=E5=BC=B9=E7=AA=97=E7=9A=84=E5=9B=9E=E8=B0=83=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/com/gh/gamecenter/MainActivity.java | 3 --- .../common/dialog/NotificationHintDialogFragment.kt | 11 ++++++++++- .../gh/gamecenter/common/utils/NotificationHelper.kt | 7 +++++-- 3 files changed, 15 insertions(+), 6 deletions(-) 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") } }