diff --git a/app/src/main/java/com/gh/common/constant/Constants.java b/app/src/main/java/com/gh/common/constant/Constants.java index 6f7a5ef3a6..92b4240d68 100644 --- a/app/src/main/java/com/gh/common/constant/Constants.java +++ b/app/src/main/java/com/gh/common/constant/Constants.java @@ -44,8 +44,12 @@ public class Constants { public static final String SP_SHOWED_NOTIFICATION_NEW_VERSION = "show_notification_new_version"; // 今天是否已经触发了 “通知管理” 引导弹窗 public static final String SP_IS_SHOWED_NOTIFICATION_TODAY = "show_is_notification_today"; - // 标记安装的游戏为已玩过弹窗,最多取消2次 (https://gitlab.ghzs.com/pm/halo-app-issues/issues/722 调整为版本相关) (不是常量了也放这里好像有点奇怪) + // v4.0.0已废弃,标记安装的游戏为已玩过弹窗,最多取消2次 (https://gitlab.ghzs.com/pm/halo-app-issues/issues/722 调整为版本相关) (不是常量了也放这里好像有点奇怪) public static final String SP_MARK_INSTALLED_GAME = "mark_installed_game" + PackageUtils.getVersionName(); + // 标记安装的游戏为已玩过弹窗(个人主页最多弹一次) + public static final String SP_MARK_INSTALLED_GAME_USER_HOME = "mark_installed_game_user_home" + PackageUtils.getVersionName(); + // 标记安装的游戏为已玩过弹窗(我的游戏最多弹一次) + public static final String SP_MARK_INSTALLED_GAME_MY_GAME = "mark_installed_game_my_game" + PackageUtils.getVersionName(); //视频详情滑动引导 public static final String SP_SHOW_SLIDE_GUIDE = "show_slide_guide"; //视频详情点击引导 diff --git a/app/src/main/java/com/gh/gamecenter/WebActivity.java b/app/src/main/java/com/gh/gamecenter/WebActivity.java index 450db77a27..51af9175eb 100644 --- a/app/src/main/java/com/gh/gamecenter/WebActivity.java +++ b/app/src/main/java/com/gh/gamecenter/WebActivity.java @@ -130,7 +130,7 @@ public class WebActivity extends NormalActivity { url = Constants.BADGE_ADDRESS; } - url = String.format(Locale.CHINA, "%s?user_id=%s&name=%s&icon=%s×tamp=%d", url, userId, name, URLEncoder.encode(icon), Math.round(new Date().getTime() / 1000)); + url = String.format(Locale.CHINA, "%s?user_id=%s&name=%s&icon=%s×tamp=%d", url, userId, name, URLEncoder.encode(icon), Math.round((new Date().getTime() / 1000) / 1000)); Bundle bundle = new Bundle(); bundle.putString(EntranceUtils.KEY_URL, url); bundle.putBoolean(WebFragment.KEY_LEAVE_WEB_PAGE_TO_HANDLE_TITLE, true); diff --git a/app/src/main/java/com/gh/gamecenter/mygame/MyPlayedGameFragment.kt b/app/src/main/java/com/gh/gamecenter/mygame/MyPlayedGameFragment.kt index 998ad5c2db..6a3c6f0aa2 100644 --- a/app/src/main/java/com/gh/gamecenter/mygame/MyPlayedGameFragment.kt +++ b/app/src/main/java/com/gh/gamecenter/mygame/MyPlayedGameFragment.kt @@ -36,9 +36,10 @@ class MyPlayedGameFragment : PlayedGameFragment() { override fun onChanged(ts: MutableList?) { super.onChanged(ts) val installedList = PackagesManager.filterSameApk(PackagesManager.filterDownloadBlackPackage(PackagesManager.getInstalledList())) - val count = SPUtils.getInt(Constants.SP_MARK_INSTALLED_GAME, 0) +// val count = SPUtils.getInt(Constants.SP_MARK_INSTALLED_GAME, 0) + val isCancel = SPUtils.getBoolean(Constants.SP_MARK_INSTALLED_GAME_MY_GAME, false) val tabCheckIndex = activity?.intent?.getIntExtra(BaseActivity_TabLayout.PAGE_INDEX, 0) ?: 0 - if (tabCheckIndex == 0 && count < 2 && ts.isNullOrEmpty() && installedList.isNotEmpty()) { + if (tabCheckIndex == 0 && !isCancel && ts.isNullOrEmpty() && installedList.isNotEmpty()) { val mDialog = InstalledGameDialog(requireContext(), installedList, "我的光环_新", "我的游戏-标记玩过弹窗") mDialog.show() mDialog.onConfirmClickListener = { diff --git a/app/src/main/java/com/gh/gamecenter/personal/PersonalFunctionAdapter.kt b/app/src/main/java/com/gh/gamecenter/personal/PersonalFunctionAdapter.kt index c46eb18d51..cac83efd30 100644 --- a/app/src/main/java/com/gh/gamecenter/personal/PersonalFunctionAdapter.kt +++ b/app/src/main/java/com/gh/gamecenter/personal/PersonalFunctionAdapter.kt @@ -87,12 +87,14 @@ class PersonalFunctionAdapter(val context: Context, val groupName: String, val m } private fun directPage(linkEntity: FunctionalLinkEntity) { - val haveReadRecord: HashSet = SPUtils.getStringSet(Constants.SP_ADDONS_FUNCS_HAVE_READ) as HashSet - haveReadRecord.add(linkEntity.id) - SPUtils.setStringSet(Constants.SP_ADDONS_FUNCS_HAVE_READ, haveReadRecord) - MessageUnreadRepository.loadMessageUnreadTotal() - linkEntity.remind = false - notifyDataSetChanged() + if (linkEntity.remind) { + val haveReadRecord: HashSet = SPUtils.getStringSet(Constants.SP_ADDONS_FUNCS_HAVE_READ) as HashSet + haveReadRecord.add(linkEntity.id) + SPUtils.setStringSet(Constants.SP_ADDONS_FUNCS_HAVE_READ, haveReadRecord) + MessageUnreadRepository.loadMessageUnreadTotal() + linkEntity.remind = false + notifyDataSetChanged() + } MtaHelper.onEvent("我的光环_新", "功能入口", "$groupName+${linkEntity.type}") when (linkEntity.type) { diff --git a/app/src/main/java/com/gh/gamecenter/personalhome/InstalledGameDialog.kt b/app/src/main/java/com/gh/gamecenter/personalhome/InstalledGameDialog.kt index 06668a836c..84f7164f38 100644 --- a/app/src/main/java/com/gh/gamecenter/personalhome/InstalledGameDialog.kt +++ b/app/src/main/java/com/gh/gamecenter/personalhome/InstalledGameDialog.kt @@ -41,13 +41,23 @@ class InstalledGameDialog(val mContext: Context, val games: ArrayList