From dd12b103be2ff5f72fa0dc35516b69e9f91bcb4d Mon Sep 17 00:00:00 2001 From: chenjuntao Date: Thu, 9 Jan 2025 09:59:32 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=8D=95=E6=8A=93=E4=B8=8A=E6=8A=A5?= =?UTF-8?q?=E6=B8=B8=E6=88=8F=E5=90=AF=E5=8A=A8=E6=97=A5=E5=BF=97=E7=9A=84?= =?UTF-8?q?=E9=97=AA=E9=80=80=E9=97=AE=E9=A2=98=20https://sentry.shanqu.cc?= =?UTF-8?q?/organizations/lightgame/issues/406179?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/gh/common/util/PackageLauncher.kt | 37 ++++++++++--------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/app/src/main/java/com/gh/common/util/PackageLauncher.kt b/app/src/main/java/com/gh/common/util/PackageLauncher.kt index b89bc9a084..a621a6bed3 100644 --- a/app/src/main/java/com/gh/common/util/PackageLauncher.kt +++ b/app/src/main/java/com/gh/common/util/PackageLauncher.kt @@ -81,28 +81,11 @@ object PackageLauncher { gameEntity: GameEntity? = null, packageName: String? ) { - if (packageName.isNullOrEmpty()) { ToastUtils.toast("启动失败") return } - // 获取 GameInstall 实体,用于记录启动日志用 - val gameInstall = if (gameEntity != null) { - GameInstall.transformGameInstall(gameEntity, packageName) - } else { - PackagesManager.getInstalledList().find { it.packageName == packageName } - } - - if (gameInstall != null) { - NewFlatLogUtils.logGameLaunch( - gameId = gameInstall.id ?: "unknown", - gameName = gameInstall.name ?: "unknown", - gameCategory = gameInstall.category ?: "unknown", - downloadStatus = if (gameInstall.downloadStatus == "demo") "试玩" else "下载" - ) - } - try { val intent = context.applicationContext.packageManager.getLaunchIntentForPackage(packageName) if (intent != null) { @@ -113,6 +96,26 @@ object PackageLauncher { } catch (e: Exception) { ToastUtils.toast( "启动失败") } + + try { + // 获取 GameInstall 实体,用于记录启动日志用 + val gameInstall = if (gameEntity != null) { + GameInstall.transformGameInstall(gameEntity, packageName) + } else { + PackagesManager.getInstalledList().find { it.packageName == packageName } + } + + if (gameInstall != null) { + NewFlatLogUtils.logGameLaunch( + gameId = gameInstall.id ?: "unknown", + gameName = gameInstall.name ?: "unknown", + gameCategory = gameInstall.category ?: "unknown", + downloadStatus = if (gameInstall.downloadStatus == "demo") "试玩" else "下载" + ) + } + } catch (e: RuntimeException) { + // 都 DeadSystemException 了,还想啥日志上报 + } } } \ No newline at end of file