From eea650bb39eb2599996f89b327d883cfb85ee52e Mon Sep 17 00:00:00 2001 From: Damontecres Date: Sat, 22 Nov 2025 14:07:52 -0500 Subject: [PATCH] Fix debug page crash on Android <11 --- .../wholphin/ui/detail/DebugPage.kt | 34 +++++++++++++------ 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/app/src/main/java/com/github/damontecres/wholphin/ui/detail/DebugPage.kt b/app/src/main/java/com/github/damontecres/wholphin/ui/detail/DebugPage.kt index ba340e56..5f771ab1 100644 --- a/app/src/main/java/com/github/damontecres/wholphin/ui/detail/DebugPage.kt +++ b/app/src/main/java/com/github/damontecres/wholphin/ui/detail/DebugPage.kt @@ -202,19 +202,31 @@ fun DebugPage( color = MaterialTheme.colorScheme.onSurface, ) val pkgInfo = context.packageManager.getPackageInfo(context.packageName, 0) - val installSource = context.packageManager.getInstallSourceInfo(context.packageName) - listOf( - "Version Name: ${pkgInfo.versionName}", - "Version Code: ${pkgInfo.versionCodeLong}", - "Build type: ${BuildConfig.BUILD_TYPE}", - "Debug enabled: ${BuildConfig.DEBUG}", - "ABIs: ${Build.SUPPORTED_ABIS.toList()}", - "Install source: ${installSource.packageSource}", - "Installer: ${installSource.installingPackageName}", - "Initiator: ${installSource.initiatingPackageName}", + val installInfo = + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { + val installSource = + context.packageManager.getInstallSourceInfo(context.packageName) + buildList { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + add("Install source: ${installSource.packageSource}") + } + add("Installer: ${installSource.installingPackageName}") + add("Initiator: ${installSource.initiatingPackageName}") + } + } else { + listOf(context.packageManager.getInstallerPackageName(context.packageName)) + } + ( + listOf( + "Version Name: ${pkgInfo.versionName}", + "Version Code: ${pkgInfo.versionCodeLong}", + "Build type: ${BuildConfig.BUILD_TYPE}", + "Debug enabled: ${BuildConfig.DEBUG}", + "ABIs: ${Build.SUPPORTED_ABIS.toList()}", + ) + installInfo ).forEach { Text( - text = it, + text = it.toString(), style = MaterialTheme.typography.bodySmall, color = MaterialTheme.colorScheme.onSurface, )