diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/GameDetailFragment.java b/app/src/main/java/com/gh/gamecenter/gamedetail/GameDetailFragment.java index 1075ee4340..b01301af13 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/GameDetailFragment.java +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/GameDetailFragment.java @@ -344,7 +344,7 @@ public class GameDetailFragment extends NormalFragment { DetailDownloadUtils.detailInitDownload(viewHolder, true); if (!mGameDetailEntity.getMe().isGameConcerned()) { - if (PackagesManager.findInstallById(mGameEntity.getId()) == null) { + if (PackagesManager.findInstallByIdExcludeBlackPackage(mGameEntity.getId()) == null) { tabPerformClick(mTabBarXinXiTv); } } diff --git a/app/src/main/java/com/gh/gamecenter/manager/PackagesManager.kt b/app/src/main/java/com/gh/gamecenter/manager/PackagesManager.kt index 4761e0cff2..3c7dd27f02 100644 --- a/app/src/main/java/com/gh/gamecenter/manager/PackagesManager.kt +++ b/app/src/main/java/com/gh/gamecenter/manager/PackagesManager.kt @@ -170,6 +170,23 @@ object PackagesManager { return null } + + /** + * 根据游戏Id获取已安装的游戏数据 + */ + @JvmStatic + fun findInstallByIdExcludeBlackPackage(gameId: String?): GameInstall? { + if (TextUtils.isEmpty(gameId)) return null + + val list: List = filterDownloadBlackPackage(installedList) ?: return null + for (gameInstall in list) { + if (gameId == gameInstall.id) { + return gameInstall + } + } + return null + } + /** * 过滤同包名游戏,取最后一个 * @return