diff --git a/app/src/main/java/com/gh/common/DefaultJsApi.kt b/app/src/main/java/com/gh/common/DefaultJsApi.kt index 48b535745b..79afbaec7e 100644 --- a/app/src/main/java/com/gh/common/DefaultJsApi.kt +++ b/app/src/main/java/com/gh/common/DefaultJsApi.kt @@ -220,7 +220,7 @@ class DefaultJsApi( runOnUiThread { // 若畅玩列表中安装了,优先启动畅玩游戏 if (VHelper.isInstalled(packageName)) { - if (!VHelper.showDialogIfVSpaceIsNeeded(context, "", "", "", "")) { + VHelper.validateVSpaceBeforeAction(context, packageName, null) { VHelper.launch(context, packageName) } } else { diff --git a/app/src/main/java/com/gh/common/chain/ValidateVSpaceHandler.kt b/app/src/main/java/com/gh/common/chain/ValidateVSpaceHandler.kt index 08295dde10..767001fcf0 100644 --- a/app/src/main/java/com/gh/common/chain/ValidateVSpaceHandler.kt +++ b/app/src/main/java/com/gh/common/chain/ValidateVSpaceHandler.kt @@ -16,7 +16,7 @@ class ValidateVSpaceHandler : DownloadChainHandler() { } if (asVGame) { - VHelper.validateVSpaceBeforeAction(context, gameEntity) { + VHelper.validateVSpaceBeforeAction(context,gameEntity.getUniquePackageName(), gameEntity) { closure.invoke() } } else { diff --git a/app/src/main/java/com/gh/common/util/GameActivityDownloadHelper.kt b/app/src/main/java/com/gh/common/util/GameActivityDownloadHelper.kt index 7bf73d199b..1094b2466b 100644 --- a/app/src/main/java/com/gh/common/util/GameActivityDownloadHelper.kt +++ b/app/src/main/java/com/gh/common/util/GameActivityDownloadHelper.kt @@ -282,7 +282,7 @@ object GameActivityDownloadHelper { location: String, traceEvent: ExposureEvent ) { - VHelper.validateVSpaceBeforeAction(context, gameEntity) { + VHelper.validateVSpaceBeforeAction(context,gameEntity.getUniquePackageName(), gameEntity) { GamePermissionDialogFragment.show((context as AppCompatActivity), gameEntity, gameEntity.info) { CertificationDialog.showCertificationDialog(context, gameEntity) { DialogUtils.checkDownload( diff --git a/app/src/main/java/com/gh/vspace/VHelper.kt b/app/src/main/java/com/gh/vspace/VHelper.kt index 1d795078ff..cccf83a4ed 100644 --- a/app/src/main/java/com/gh/vspace/VHelper.kt +++ b/app/src/main/java/com/gh/vspace/VHelper.kt @@ -559,8 +559,8 @@ object VHelper { /** * 在执行 callback 前先检查组件是否已安装,是否可下载 */ - fun validateVSpaceBeforeAction(context: Context, gameEntity: GameEntity?, callback: () -> Unit) { - if (isLegacyInstalled(gameEntity?.getUniquePackageName())) { + fun validateVSpaceBeforeAction(context: Context, packageName: String?, gameEntity: GameEntity?, callback: () -> Unit) { + if (isLegacyInstalled(packageName)) { oldCwValidateVSpaceBeforeAction(context, gameEntity, callback) } else { newCwValidateVspaceBeforeAction(context, gameEntity, callback) @@ -680,6 +680,9 @@ object VHelper { callback.invoke() } + /** + * 判断是否需要安装32位组件,64位直接callback + */ private fun newCwValidateVspaceBeforeAction(context: Context, gameEntity: GameEntity?, callback: () -> Unit) { val bit = gameEntity?.gameBit ?: "" if (bit == "32") { @@ -1191,7 +1194,7 @@ object VHelper { logLaunchButtonClicked(packageName, gameId, gameName, gameType, location) } - validateVSpaceBeforeAction(context, GameEntity().apply { + validateVSpaceBeforeAction(context,packageName, GameEntity().apply { id = gameId name = gameName downloadStatus = Constants.V_GAME