diff --git a/app/src/main/java/com/gh/vspace/shortcut/ShortcutManager.kt b/app/src/main/java/com/gh/vspace/shortcut/ShortcutManager.kt index 9e6d2e290f..b4ac698e49 100644 --- a/app/src/main/java/com/gh/vspace/shortcut/ShortcutManager.kt +++ b/app/src/main/java/com/gh/vspace/shortcut/ShortcutManager.kt @@ -4,6 +4,7 @@ import android.content.Context import android.content.Intent import android.graphics.Bitmap import android.graphics.Matrix +import android.view.WindowManager import androidx.core.content.pm.ShortcutInfoCompat import androidx.core.content.pm.ShortcutManagerCompat import androidx.core.graphics.drawable.IconCompat @@ -15,6 +16,7 @@ import com.gh.gamecenter.common.exposure.meta.MetaUtil import com.gh.gamecenter.common.utils.ImageUtils import com.gh.gamecenter.common.utils.PermissionHelper import com.gh.gamecenter.core.runOnUiThread +import com.gh.gamecenter.core.utils.ToastUtils import com.gh.gamecenter.feature.entity.GameEntity import com.gh.vspace.VHelper import com.halo.assistant.HaloApp @@ -38,7 +40,11 @@ class ShortcutManager private constructor() { object : ShortcutAction() { override fun showPermissionDialog(context: Context, check: Int, executor: Executor) { runOnUiThread { - mResult?.showPermissionDialog(executor) + try { + mResult?.showPermissionDialog(executor) + } catch (e: WindowManager.BadTokenException) { + ToastUtils.toast("创建快捷方式失败,请稍后再试") + } } } @@ -52,7 +58,11 @@ class ShortcutManager private constructor() { } else { //创建失败估计还是权限问题,直接弹出跳转权限设置 runOnUiThread { - mResult?.showPermissionDialog(executor) + try { + mResult?.showPermissionDialog(executor) + } catch (e: WindowManager.BadTokenException) { + ToastUtils.toast("创建快捷方式失败,请稍后再试") + } } } }