From 0a514444efe1493b27dbecb54504c08d1e9b1f59 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Wed, 8 May 2024 17:46:17 +0530 Subject: [PATCH] PackageUtil: Use longVersion on API level 28 for shared library Signed-off-by: Aayush Gupta --- .../main/java/com/aurora/store/util/PackageUtil.kt | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/aurora/store/util/PackageUtil.kt b/app/src/main/java/com/aurora/store/util/PackageUtil.kt index 9ca60e42c..ff05bd1a7 100644 --- a/app/src/main/java/com/aurora/store/util/PackageUtil.kt +++ b/app/src/main/java/com/aurora/store/util/PackageUtil.kt @@ -28,14 +28,13 @@ import android.content.pm.PackageManager.PackageInfoFlags import android.content.pm.SharedLibraryInfo import android.content.res.Configuration import android.graphics.Bitmap -import android.os.UserHandle import androidx.core.content.pm.PackageInfoCompat import androidx.core.graphics.drawable.toBitmap import com.aurora.extensions.getInstallerPackageNameCompat import com.aurora.extensions.isOAndAbove +import com.aurora.extensions.isPAndAbove import com.aurora.extensions.isTAndAbove - object PackageUtil { fun isInstalled(context: Context, packageName: String): Boolean { @@ -67,8 +66,15 @@ object PackageUtil { fun isSharedLibraryInstalled(context: Context, packageName: String, versionCode: Int): Boolean { return if (isOAndAbove()) { val sharedLibraries = getAllSharedLibraries(context) - sharedLibraries.any { - it.name == packageName && it.version == versionCode + if (isPAndAbove()) { + sharedLibraries.any { + it.name == packageName && it.longVersion == versionCode.toLong() + } + } else { + sharedLibraries.any { + @Suppress("DEPRECATION") + it.name == packageName && it.version == versionCode + } } } else { false