Modify change uninstalled apps or unknown apps to show their package name for users

This commit is contained in:
2023-04-09 20:52:55 +08:00
parent 8690e8afdb
commit 45c337d475
6 changed files with 10 additions and 8 deletions

View File

@@ -100,7 +100,7 @@ data class AppErrorsInfoBean(
userId = userId, userId = userId,
cpuAbi = packageName?.let { context.appCpuAbiOf(it) } ?: "", cpuAbi = packageName?.let { context.appCpuAbiOf(it) } ?: "",
packageName = packageName ?: "unknown", packageName = packageName ?: "unknown",
versionName = packageName?.let { context.appVersionNameOf(it) } ?: "", versionName = packageName?.let { context.appVersionNameOf(it).ifBlank { "unknown" } } ?: "",
versionCode = packageName?.let { context.appVersionCodeOf(it) } ?: -1L, versionCode = packageName?.let { context.appVersionCodeOf(it) } ?: -1L,
isNativeCrash = isNativeCrash, isNativeCrash = isNativeCrash,
exceptionClassName = crashInfo?.exceptionClassName ?: "unknown", exceptionClassName = crashInfo?.exceptionClassName ?: "unknown",

View File

@@ -87,7 +87,7 @@ object AppErrorsRecordData {
?.toEntityOrNull<CopyOnWriteArrayList<AppErrorsInfoBean>>() ?.toEntityOrNull<CopyOnWriteArrayList<AppErrorsInfoBean>>()
?.onEach { e -> ?.onEach { e ->
e.cpuAbi = it.appCpuAbiOf(e.packageName) e.cpuAbi = it.appCpuAbiOf(e.packageName)
e.versionName = it.appVersionNameOf(e.packageName) e.versionName = it.appVersionNameOf(e.packageName).ifBlank { "unknown" }
e.versionCode = it.appVersionCodeOf(e.packageName) e.versionCode = it.appVersionCodeOf(e.packageName)
e.toJsonOrNull()?.also { json -> File(errorsInfoDataFolder.absolutePath, e.jsonFileName).writeText(json) } e.toJsonOrNull()?.also { json -> File(errorsInfoDataFolder.absolutePath, e.jsonFileName).writeText(json) }
}.let { result -> }.let { result ->

View File

@@ -274,7 +274,7 @@ object FrameworkHooker : YukiBaseHooker() {
*/ */
private fun AppErrorsProcessData.handleShowAppErrorUi(context: Context) { private fun AppErrorsProcessData.handleShowAppErrorUi(context: Context) {
/** 当前 APP 名称 */ /** 当前 APP 名称 */
val appName = appInfo?.let { context.appNameOf(it.packageName) } ?: packageName val appName = appInfo?.let { context.appNameOf(it.packageName).ifBlank { it.packageName } } ?: packageName
/** 当前 APP 名称 (包含用户 ID) */ /** 当前 APP 名称 (包含用户 ID) */
val appNameWithUserId = if (userId != 0) "$appName (${LocaleString.userId(userId)})" else appName val appNameWithUserId = if (userId != 0) "$appName (${LocaleString.userId(userId)})" else appName

View File

@@ -106,7 +106,7 @@ class AppErrorsDetailActivity : BaseActivity<ActivityAppErrorsDetailBinding>() {
}, LocaleString.shareErrorStack)) }, LocaleString.shareErrorStack))
} }
binding.appIcon.setImageDrawable(appIconOf(appErrorsInfo.packageName)) binding.appIcon.setImageDrawable(appIconOf(appErrorsInfo.packageName))
binding.appNameText.text = appNameOf(appErrorsInfo.packageName) binding.appNameText.text = appNameOf(appErrorsInfo.packageName).ifBlank { appErrorsInfo.packageName }
binding.appVersionText.text = appErrorsInfo.versionBrand binding.appVersionText.text = appErrorsInfo.versionBrand
binding.appUserIdText.isVisible = appErrorsInfo.userId > 0 binding.appUserIdText.isVisible = appErrorsInfo.userId > 0
binding.appUserIdText.text = LocaleString.userId(appErrorsInfo.userId) binding.appUserIdText.text = LocaleString.userId(appErrorsInfo.userId)
@@ -133,7 +133,9 @@ class AppErrorsDetailActivity : BaseActivity<ActivityAppErrorsDetailBinding>() {
} }
} }
binding.appPanelScrollView.setOnScrollChangeListener { _, _, y, _, _ -> binding.appPanelScrollView.setOnScrollChangeListener { _, _, y, _, _ ->
binding.detailTitleText.text = if (y >= 30.dp(context = this)) appNameOf(appErrorsInfo.packageName) else LocaleString.appName binding.detailTitleText.text = if (y >= 30.dp(context = this))
appNameOf(appErrorsInfo.packageName).ifBlank { appErrorsInfo.packageName }
else LocaleString.appName
} }
binding.detailTitleText.setOnClickListener { binding.appPanelScrollView.smoothScrollTo(0, 0) } binding.detailTitleText.setOnClickListener { binding.appPanelScrollView.smoothScrollTo(0, 0) }
resetScrollView() resetScrollView()

View File

@@ -59,7 +59,7 @@ class AppErrorsMutedActivity : BaseActivity<ActivityAppErrorsMutedBinding>() {
onBindViews<AdapterAppErrorsMutedBinding> { binding, position -> onBindViews<AdapterAppErrorsMutedBinding> { binding, position ->
listData[position].also { bean -> listData[position].also { bean ->
binding.appIcon.setImageDrawable(appIconOf(bean.packageName)) binding.appIcon.setImageDrawable(appIconOf(bean.packageName))
binding.appNameText.text = appNameOf(bean.packageName) binding.appNameText.text = appNameOf(bean.packageName).ifBlank { bean.packageName }
binding.muteTypeText.text = when (bean.type) { binding.muteTypeText.text = when (bean.type) {
MutedErrorsAppBean.MuteType.UNTIL_UNLOCKS -> LocaleString.muteIfUnlock MutedErrorsAppBean.MuteType.UNTIL_UNLOCKS -> LocaleString.muteIfUnlock
MutedErrorsAppBean.MuteType.UNTIL_REBOOTS -> LocaleString.muteIfRestart MutedErrorsAppBean.MuteType.UNTIL_REBOOTS -> LocaleString.muteIfRestart

View File

@@ -96,7 +96,7 @@ class AppErrorsRecordActivity : BaseActivity<ActivityAppErrorsRecordBinding>() {
binding.totalErrorsUnitText.text = LocaleString.totalErrorsUnit(listData.size) binding.totalErrorsUnitText.text = LocaleString.totalErrorsUnit(listData.size)
binding.totalAppsUnitText.text = LocaleString.totalAppsUnit(it.size) binding.totalAppsUnitText.text = LocaleString.totalAppsUnit(it.size)
binding.mostErrorsAppIcon.setImageDrawable(appIconOf(mostAppPackageName)) binding.mostErrorsAppIcon.setImageDrawable(appIconOf(mostAppPackageName))
binding.mostErrorsAppText.text = appNameOf(mostAppPackageName) binding.mostErrorsAppText.text = appNameOf(mostAppPackageName).ifBlank { mostAppPackageName }
binding.mostErrorsTypeText.text = mostErrorsType binding.mostErrorsTypeText.text = mostErrorsType
binding.totalPptOfErrorsText.text = "$pptCount%" binding.totalPptOfErrorsText.text = "$pptCount%"
confirmButton(LocaleString.gotIt) confirmButton(LocaleString.gotIt)
@@ -134,7 +134,7 @@ class AppErrorsRecordActivity : BaseActivity<ActivityAppErrorsRecordBinding>() {
onBindViews<AdapterAppErrorsRecordBinding> { binding, position -> onBindViews<AdapterAppErrorsRecordBinding> { binding, position ->
listData[position].also { bean -> listData[position].also { bean ->
binding.appIcon.setImageDrawable(appIconOf(bean.packageName)) binding.appIcon.setImageDrawable(appIconOf(bean.packageName))
binding.appNameText.text = appNameOf(bean.packageName) binding.appNameText.text = appNameOf(bean.packageName).ifBlank { bean.packageName }
binding.appUserIdText.isVisible = bean.userId > 0 binding.appUserIdText.isVisible = bean.userId > 0
binding.appUserIdText.text = LocaleString.userId(bean.userId) binding.appUserIdText.text = LocaleString.userId(bean.userId)
binding.errorsTimeText.text = bean.crossTime binding.errorsTimeText.text = bean.crossTime