Fix app crash on startup on some Android TV

Why do you guys even exist

# Conflicts:
#	CHANGELOG.md
This commit is contained in:
AntsyLich
2026-03-23 21:12:30 +06:00
committed by Jobobby04
parent d9ca2b69e8
commit bd7201cfb9
@@ -14,6 +14,7 @@ import kotlin.coroutines.resume
object WebViewUtil {
private const val CHROME_PACKAGE = "com.android.chrome"
private const val YOUTUBE_FOR_TV_PACKAGE = "com.google.android.youtube.tv"
private const val SYSTEM_SETTINGS_PACKAGE = "com.android.settings"
const val MINIMUM_WEBVIEW_VERSION = 118
@@ -61,13 +62,16 @@ object WebViewUtil {
}
fun spoofedPackageName(context: Context): String {
return try {
context.packageManager.getPackageInfo(CHROME_PACKAGE, PackageManager.GET_META_DATA)
CHROME_PACKAGE
} catch (_: PackageManager.NameNotFoundException) {
SYSTEM_SETTINGS_PACKAGE
}
return runCatching { context.packageManager.getPackageInfo(CHROME_PACKAGE, 0) }
.recoverCatching { context.packageManager.getPackageInfo(SYSTEM_SETTINGS_PACKAGE, 0) }
.recoverCatching { context.packageManager.getPackageInfo(YOUTUBE_FOR_TV_PACKAGE, 0) }
.fold(
onSuccess = { it.packageName },
onFailure = {
context.packageManager.getInstalledPackages(0)
.random().packageName
},
)
}
}