From e2f2188e604823773142f53ea1715af54b696b73 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Mon, 28 Oct 2024 11:53:54 +0530 Subject: [PATCH] Platform: Switch all extensions to property access syntax Signed-off-by: Aayush Gupta --- .../java/com/aurora/extensions/Context.kt | 8 +- .../java/com/aurora/extensions/PackageInfo.kt | 4 +- .../com/aurora/extensions/PackageManager.kt | 6 +- .../java/com/aurora/extensions/Platform.kt | 100 +++++++----------- .../main/java/com/aurora/store/AuroraApp.kt | 2 +- .../aurora/store/data/helper/UpdateHelper.kt | 2 +- .../store/data/installer/AppInstaller.kt | 10 +- .../store/data/installer/SessionInstaller.kt | 10 +- .../store/data/installer/ShizukuInstaller.kt | 4 +- .../store/data/providers/BlacklistProvider.kt | 2 +- .../providers/NativeDeviceInfoProvider.kt | 2 +- .../data/providers/PermissionProvider.kt | 6 +- .../store/data/receiver/MigrationReceiver.kt | 2 +- .../data/receiver/UnarchivePackageReceiver.kt | 2 +- .../aurora/store/data/work/DownloadWorker.kt | 6 +- .../java/com/aurora/store/util/CertUtil.kt | 4 +- .../java/com/aurora/store/util/PackageUtil.kt | 16 +-- .../view/ui/onboarding/PermissionsFragment.kt | 10 +- .../view/ui/preferences/InstallerFragment.kt | 10 +- .../store/view/ui/preferences/UIPreference.kt | 2 +- .../view/ui/sheets/NetworkDialogSheet.kt | 2 +- .../viewmodel/network/NetworkViewModel.kt | 2 +- 22 files changed, 94 insertions(+), 118 deletions(-) diff --git a/app/src/main/java/com/aurora/extensions/Context.kt b/app/src/main/java/com/aurora/extensions/Context.kt index f7745a165..510eb8db0 100644 --- a/app/src/main/java/com/aurora/extensions/Context.kt +++ b/app/src/main/java/com/aurora/extensions/Context.kt @@ -116,7 +116,7 @@ fun Context.getStyledAttributeColor(id: Int): Int { } fun Context.isIgnoringBatteryOptimizations(): Boolean { - return if (isMAndAbove()) { + return if (isMAndAbove) { (getSystemService())?.isIgnoringBatteryOptimizations(packageName) ?: true } else { true @@ -124,7 +124,7 @@ fun Context.isIgnoringBatteryOptimizations(): Boolean { } fun Context.areNotificationsEnabled(): Boolean { - return if (isNAndAbove()) { + return if (isNAndAbove) { getSystemService()!!.areNotificationsEnabled() } else { true @@ -136,7 +136,7 @@ fun Context.checkManifestPermission(permission: String): Boolean { } fun Context.isExternalStorageAccessible(): Boolean { - return if (isRAndAbove()) { + return if (isRAndAbove) { Environment.isExternalStorageManager() } else { checkManifestPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) @@ -144,7 +144,7 @@ fun Context.isExternalStorageAccessible(): Boolean { } fun Context.isDomainVerified(domain: String): Boolean { - return if (isSAndAbove()) { + return if (isSAndAbove) { val domainVerificationManager = getSystemService() val userState = domainVerificationManager!!.getDomainVerificationUserState(packageName) val domainMap = userState?.hostToStateMap?.filterKeys { it == domain } diff --git a/app/src/main/java/com/aurora/extensions/PackageInfo.kt b/app/src/main/java/com/aurora/extensions/PackageInfo.kt index a58237ee9..9d3064488 100644 --- a/app/src/main/java/com/aurora/extensions/PackageInfo.kt +++ b/app/src/main/java/com/aurora/extensions/PackageInfo.kt @@ -11,11 +11,11 @@ fun PackageInfo.isValidApp(packageManager: PackageManager): Boolean { if (this.applicationInfo!!.loadLabel(packageManager).startsWith(this.packageName)) return false return when { - isQAndAbove() -> { + isQAndAbove -> { Process.isApplicationUid(this.applicationInfo!!.uid) && !this.applicationInfo!!.isResourceOverlay && !this.isApex } - isNAndAbove() -> Process.isApplicationUid(this.applicationInfo!!.uid) + isNAndAbove -> Process.isApplicationUid(this.applicationInfo!!.uid) else -> this.versionName != null } } diff --git a/app/src/main/java/com/aurora/extensions/PackageManager.kt b/app/src/main/java/com/aurora/extensions/PackageManager.kt index 37931c4a9..5242e5a32 100644 --- a/app/src/main/java/com/aurora/extensions/PackageManager.kt +++ b/app/src/main/java/com/aurora/extensions/PackageManager.kt @@ -6,7 +6,7 @@ import androidx.annotation.RequiresApi import com.aurora.store.BuildConfig fun PackageManager.getInstallerPackageNameCompat(packageName: String): String? { - return if (isRAndAbove()) { + return if (isRAndAbove) { getInstallSourceInfo(packageName).installingPackageName } else { @Suppress("DEPRECATION") @@ -19,11 +19,11 @@ fun PackageManager.getUpdateOwnerPackageNameCompat(packageName: String): String? // https://developer.android.com/reference/android/content/pm/PackageInstaller.SessionParams#setRequireUserAction(int) val installSourceInfo = getInstallSourceInfo(packageName) return when { - isUAndAbove() -> { + isUAndAbove -> { // If update ownership is null, we can still silently update it if we installed it installSourceInfo.updateOwnerPackageName ?: installSourceInfo.installingPackageName } - isSAndAbove() -> installSourceInfo.installingPackageName + isSAndAbove -> installSourceInfo.installingPackageName else -> if (packageName == BuildConfig.APPLICATION_ID) BuildConfig.APPLICATION_ID else null } } diff --git a/app/src/main/java/com/aurora/extensions/Platform.kt b/app/src/main/java/com/aurora/extensions/Platform.kt index bdd78a662..e75d762e6 100644 --- a/app/src/main/java/com/aurora/extensions/Platform.kt +++ b/app/src/main/java/com/aurora/extensions/Platform.kt @@ -24,89 +24,65 @@ import android.annotation.SuppressLint import android.os.Build import java.util.Locale -fun isMAndAbove(): Boolean { - return Build.VERSION.SDK_INT >= Build.VERSION_CODES.M -} +val isMAndAbove: Boolean + get() = Build.VERSION.SDK_INT >= Build.VERSION_CODES.M -fun isNAndAbove(): Boolean { - return Build.VERSION.SDK_INT >= Build.VERSION_CODES.N -} +val isNAndAbove: Boolean + get() = Build.VERSION.SDK_INT >= Build.VERSION_CODES.N -fun isOAndAbove(): Boolean { - return Build.VERSION.SDK_INT >= Build.VERSION_CODES.O -} +val isOAndAbove: Boolean + get() = Build.VERSION.SDK_INT >= Build.VERSION_CODES.O -fun isOMR1AndAbove(): Boolean { - return Build.VERSION.SDK_INT >= Build.VERSION_CODES.O_MR1 -} +val isPAndAbove: Boolean + get() = Build.VERSION.SDK_INT >= Build.VERSION_CODES.P -fun isPAndAbove(): Boolean { - return Build.VERSION.SDK_INT >= Build.VERSION_CODES.P -} +val isQAndAbove: Boolean + get() = Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q -fun isQAndAbove(): Boolean { - return Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q -} +val isRAndAbove: Boolean + get() = Build.VERSION.SDK_INT >= Build.VERSION_CODES.R -fun isRAndAbove(): Boolean { - return Build.VERSION.SDK_INT >= Build.VERSION_CODES.R -} +val isSAndAbove: Boolean + get() = Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -fun isSAndAbove(): Boolean { - return Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -} +val isTAndAbove: Boolean + get() = Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU -fun isTAndAbove(): Boolean { - return Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU -} +val isUAndAbove: Boolean + get() = Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE -fun isUAndAbove(): Boolean { - return Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE -} +val isVAndAbove: Boolean + get() = Build.VERSION.SDK_INT >= Build.VERSION_CODES.VANILLA_ICE_CREAM -fun isVAndAbove(): Boolean { - return Build.VERSION.SDK_INT >= Build.VERSION_CODES.VANILLA_ICE_CREAM -} +val isMIUI: Boolean + get() = !getSystemProperty("ro.miui.ui.version.name").isNullOrBlank() -fun isMIUI(): Boolean { - return getSystemProperty("ro.miui.ui.version.name").isNotEmpty() -} - -fun isHuawei(): Boolean { - return Build.MANUFACTURER.lowercase(Locale.getDefault()).contains("huawei") +val isHuawei: Boolean + get() = Build.MANUFACTURER.lowercase(Locale.getDefault()).contains("huawei") || Build.HARDWARE.lowercase(Locale.getDefault()).contains("kirin") || Build.HARDWARE.lowercase(Locale.getDefault()).contains("hi3") -} -fun getMIUIVersion(): String { - val version = getSystemProperty("ro.miui.ui.version.name") - val versionCode = getSystemProperty("ro.miui.ui.version.code") - return if (version.isNotEmpty() && versionCode.isNotEmpty()) - "$version.$versionCode" - else - "unknown" -} - -@SuppressLint("PrivateApi") -fun isMiuiOptimizationDisabled(): Boolean { - if ("0" == getSystemProperty("persist.sys.miui_optimization")) { - return true - } else try { - return Class.forName("android.miui.AppOpsUtils") - .getDeclaredMethod("isXOptMode") - .invoke(null) as Boolean - } catch (e: java.lang.Exception) { - return false +@get:SuppressLint("PrivateApi") +val isMiuiOptimizationDisabled: Boolean + get() { + return if ("0" == getSystemProperty("persist.sys.miui_optimization")) { + true + } else try { + Class.forName("android.miui.AppOpsUtils") + .getDeclaredMethod("isXOptMode") + .invoke(null) as Boolean + } catch (_: java.lang.Exception) { + false + } } -} @SuppressLint("PrivateApi") -fun getSystemProperty(key: String): String { +private fun getSystemProperty(key: String): String? { return try { Class.forName("android.os.SystemProperties") .getDeclaredMethod("get", String::class.java) .invoke(null, key) as String } catch (e: Exception) { - "" + null } } diff --git a/app/src/main/java/com/aurora/store/AuroraApp.kt b/app/src/main/java/com/aurora/store/AuroraApp.kt index bae82efe0..5d77d804c 100644 --- a/app/src/main/java/com/aurora/store/AuroraApp.kt +++ b/app/src/main/java/com/aurora/store/AuroraApp.kt @@ -84,7 +84,7 @@ class AuroraApp : Application(), Configuration.Provider, ImageLoaderFactory { DynamicColors.applyToActivitiesIfAvailable(this) // Required for Shizuku installer - if (isPAndAbove()) HiddenApiBypass.addHiddenApiExemptions("I", "L") + if (isPAndAbove) HiddenApiBypass.addHiddenApiExemptions("I", "L") //Create Notification Channels NotificationUtil.createNotificationChannel(this) diff --git a/app/src/main/java/com/aurora/store/data/helper/UpdateHelper.kt b/app/src/main/java/com/aurora/store/data/helper/UpdateHelper.kt index d8e1ad80a..e9ad30d31 100644 --- a/app/src/main/java/com/aurora/store/data/helper/UpdateHelper.kt +++ b/app/src/main/java/com/aurora/store/data/helper/UpdateHelper.kt @@ -159,7 +159,7 @@ class UpdateHelper @Inject constructor( .setRequiredNetworkType(NetworkType.UNMETERED) .setRequiresBatteryNotLow(true) - if (isMAndAbove()) constraints.setRequiresDeviceIdle(true) + if (isMAndAbove) constraints.setRequiresDeviceIdle(true) return PeriodicWorkRequestBuilder( repeatInterval = updateCheckInterval, diff --git a/app/src/main/java/com/aurora/store/data/installer/AppInstaller.kt b/app/src/main/java/com/aurora/store/data/installer/AppInstaller.kt index e2df95689..fe98a8a12 100644 --- a/app/src/main/java/com/aurora/store/data/installer/AppInstaller.kt +++ b/app/src/main/java/com/aurora/store/data/installer/AppInstaller.kt @@ -93,7 +93,7 @@ class AppInstaller @Inject constructor( installers.add(AMInstaller.getInstallerInfo(context)) } - if (isOAndAbove() && hasShizukuOrSui(context)) { + if (isOAndAbove && hasShizukuOrSui(context)) { installers.add(ShizukuInstaller.getInstallerInfo(context)) } @@ -109,7 +109,7 @@ class AppInstaller @Inject constructor( return when (getCurrentInstaller(context)) { Installer.SESSION -> { // Silent install cannot be done on initial install and below A12 - if (!PackageUtil.isInstalled(context, packageName) || !isSAndAbove()) return false + if (!PackageUtil.isInstalled(context, packageName) || !isSAndAbove) return false // We cannot do silent updates if we are not the update owner if (context.packageManager.getUpdateOwnerPackageNameCompat(packageName) != BuildConfig.APPLICATION_ID) return false @@ -127,7 +127,7 @@ class AppInstaller @Inject constructor( Installer.ROOT -> hasRootAccess() Installer.SERVICE -> false // Deprecated Installer.AM -> false // We cannot check if AppManager has ability to auto-update - Installer.SHIZUKU -> isOAndAbove() && hasShizukuOrSui(context) && hasShizukuPerm() + Installer.SHIZUKU -> isOAndAbove && hasShizukuOrSui(context) && hasShizukuPerm() } } @@ -188,7 +188,7 @@ class AppInstaller @Inject constructor( val intent = Intent().apply { data = Uri.fromParts("package", packageName, null) addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) - if (isPAndAbove()) { + if (isPAndAbove) { action = Intent.ACTION_DELETE } else { @Suppress("DEPRECATION") @@ -211,7 +211,7 @@ class AppInstaller @Inject constructor( Installer.SERVICE -> if (hasAuroraService(context)) serviceInstaller else defaultInstaller Installer.AM -> if (hasAppManager(context)) amInstaller else defaultInstaller Installer.SHIZUKU -> { - if (isOAndAbove() && hasShizukuOrSui(context) && hasShizukuPerm()) { + if (isOAndAbove && hasShizukuOrSui(context) && hasShizukuPerm()) { shizukuInstaller } else { defaultInstaller diff --git a/app/src/main/java/com/aurora/store/data/installer/SessionInstaller.kt b/app/src/main/java/com/aurora/store/data/installer/SessionInstaller.kt index 0446e8b4c..ddf17e448 100644 --- a/app/src/main/java/com/aurora/store/data/installer/SessionInstaller.kt +++ b/app/src/main/java/com/aurora/store/data/installer/SessionInstaller.kt @@ -206,19 +206,19 @@ class SessionInstaller @Inject constructor( return SessionParams(SessionParams.MODE_FULL_INSTALL).apply { setAppPackageName(packageName) setInstallLocation(PackageInfo.INSTALL_LOCATION_AUTO) - if (isNAndAbove()) { + if (isNAndAbove) { setOriginatingUid(Process.myUid()) } - if (isOAndAbove()) { + if (isOAndAbove) { setInstallReason(PackageManager.INSTALL_REASON_USER) } - if (isSAndAbove()) { + if (isSAndAbove) { setRequireUserAction(SessionParams.USER_ACTION_NOT_REQUIRED) } - if (isTAndAbove()) { + if (isTAndAbove) { setPackageSource(PACKAGE_SOURCE_STORE) } - if (isUAndAbove()) { + if (isUAndAbove) { setInstallerPackageName(context.packageName) setRequestUpdateOwnership(true) setApplicationEnabledSettingPersistent() diff --git a/app/src/main/java/com/aurora/store/data/installer/ShizukuInstaller.kt b/app/src/main/java/com/aurora/store/data/installer/ShizukuInstaller.kt index 8387152be..bc49b95ac 100644 --- a/app/src/main/java/com/aurora/store/data/installer/ShizukuInstaller.kt +++ b/app/src/main/java/com/aurora/store/data/installer/ShizukuInstaller.kt @@ -87,11 +87,11 @@ class ShizukuInstaller @Inject constructor( } private val packageInstaller: PackageInstaller? by lazy { - if (isSAndAbove()) { + if (isSAndAbove) { Refine.unsafeCast( PackageInstallerHidden(iPackageInstaller, "com.android.vending", null, 0) ) - } else if (isOAndAbove()) { + } else if (isOAndAbove) { Refine.unsafeCast( PackageInstallerHidden(iPackageInstaller, "com.android.vending", 0) ) diff --git a/app/src/main/java/com/aurora/store/data/providers/BlacklistProvider.kt b/app/src/main/java/com/aurora/store/data/providers/BlacklistProvider.kt index 18b84ad87..7a063eb61 100644 --- a/app/src/main/java/com/aurora/store/data/providers/BlacklistProvider.kt +++ b/app/src/main/java/com/aurora/store/data/providers/BlacklistProvider.kt @@ -43,7 +43,7 @@ class BlacklistProvider @Inject constructor( set(value) = Preferences.putString(context, PREFERENCE_BLACKLIST, gson.toJson(value)) get() { return try { - val rawBlacklist = if (isNAndAbove()) { + val rawBlacklist = if (isNAndAbove) { val refMethod = Context::class.java.getDeclaredMethod( "getSharedPreferences", File::class.java, diff --git a/app/src/main/java/com/aurora/store/data/providers/NativeDeviceInfoProvider.kt b/app/src/main/java/com/aurora/store/data/providers/NativeDeviceInfoProvider.kt index f61c1123f..3df6441f5 100644 --- a/app/src/main/java/com/aurora/store/data/providers/NativeDeviceInfoProvider.kt +++ b/app/src/main/java/com/aurora/store/data/providers/NativeDeviceInfoProvider.kt @@ -104,7 +104,7 @@ class NativeDeviceInfoProvider(val context: Context) { setProperty("SimOperator", "38") } - if (isHuawei() && !isExport) + if (isHuawei && !isExport) stripHuaweiProperties(properties) return properties diff --git a/app/src/main/java/com/aurora/store/data/providers/PermissionProvider.kt b/app/src/main/java/com/aurora/store/data/providers/PermissionProvider.kt index 4b2015017..75e50d478 100644 --- a/app/src/main/java/com/aurora/store/data/providers/PermissionProvider.kt +++ b/app/src/main/java/com/aurora/store/data/providers/PermissionProvider.kt @@ -62,7 +62,7 @@ class PermissionProvider(private val fragment: Fragment) : } PermissionType.POST_NOTIFICATIONS -> { - if (isTAndAbove()) { + if (isTAndAbove) { permissionLauncher.launch(Manifest.permission.POST_NOTIFICATIONS) } } @@ -99,7 +99,7 @@ class PermissionProvider(private val fragment: Fragment) : PermissionType.INSTALL_UNKNOWN_APPS -> PackageUtil.canRequestPackageInstalls(context) PermissionType.POST_NOTIFICATIONS -> { - if (isTAndAbove()) { + if (isTAndAbove) { context.checkManifestPermission(Manifest.permission.POST_NOTIFICATIONS) } else { true @@ -107,7 +107,7 @@ class PermissionProvider(private val fragment: Fragment) : } PermissionType.DOZE_WHITELIST -> { - if (isMAndAbove()) context.isIgnoringBatteryOptimizations() else true + if (isMAndAbove) context.isIgnoringBatteryOptimizations() else true } PermissionType.APP_LINKS -> context.isDomainVerified("play.google.com") && diff --git a/app/src/main/java/com/aurora/store/data/receiver/MigrationReceiver.kt b/app/src/main/java/com/aurora/store/data/receiver/MigrationReceiver.kt index 1157dcb39..c4c0bd2fa 100644 --- a/app/src/main/java/com/aurora/store/data/receiver/MigrationReceiver.kt +++ b/app/src/main/java/com/aurora/store/data/receiver/MigrationReceiver.kt @@ -70,7 +70,7 @@ class MigrationReceiver : BroadcastReceiver() { // 63 -> 64 if (currentVersion == 2) { - if (isOAndAbove()) { + if (isOAndAbove) { with(context.getSystemService()!!) { // !1189 deleteNotificationChannel("NOTIFICATION_CHANNEL_GENERAL") deleteNotificationChannel("NOTIFICATION_CHANNEL_ALERT") diff --git a/app/src/main/java/com/aurora/store/data/receiver/UnarchivePackageReceiver.kt b/app/src/main/java/com/aurora/store/data/receiver/UnarchivePackageReceiver.kt index b0bbf53d8..d77463a06 100644 --- a/app/src/main/java/com/aurora/store/data/receiver/UnarchivePackageReceiver.kt +++ b/app/src/main/java/com/aurora/store/data/receiver/UnarchivePackageReceiver.kt @@ -38,7 +38,7 @@ class UnarchivePackageReceiver: BroadcastReceiver() { lateinit var downloadHelper: DownloadHelper override fun onReceive(context: Context?, intent: Intent?) { - if (isVAndAbove() && context != null && intent?.action == Intent.ACTION_UNARCHIVE_PACKAGE) { + if (isVAndAbove && context != null && intent?.action == Intent.ACTION_UNARCHIVE_PACKAGE) { val packageName = intent.getStringExtra(EXTRA_UNARCHIVE_PACKAGE_NAME)!! Log.i(TAG, "Received request to unarchive $packageName") diff --git a/app/src/main/java/com/aurora/store/data/work/DownloadWorker.kt b/app/src/main/java/com/aurora/store/data/work/DownloadWorker.kt index 8bdc54989..2c8950d43 100644 --- a/app/src/main/java/com/aurora/store/data/work/DownloadWorker.kt +++ b/app/src/main/java/com/aurora/store/data/work/DownloadWorker.kt @@ -198,7 +198,7 @@ class DownloadWorker @AssistedInject constructor( withContext(NonCancellable) { Log.i(TAG, "Failed downloading ${download.packageName}") val cancelReasons = listOf(STOP_REASON_USER, STOP_REASON_CANCELLED_BY_APP) - if (isSAndAbove() && stopReason in cancelReasons) { + if (isSAndAbove && stopReason in cancelReasons) { notifyStatus(DownloadStatus.CANCELLED) } else { notifyStatus(DownloadStatus.FAILED) @@ -222,7 +222,7 @@ class DownloadWorker @AssistedInject constructor( private fun purchase(packageName: String, versionCode: Int, offerType: Int): List { try { // Android 9.0+ supports key rotation, so purchase with latest certificate's hash - return if (isPAndAbove() && download.isInstalled) { + return if (isPAndAbove && download.isInstalled) { purchaseHelper.purchase( packageName, versionCode, @@ -349,7 +349,7 @@ class DownloadWorker @AssistedInject constructor( NotificationUtil.getDownloadNotification(appContext) } - return if (isQAndAbove()) { + return if (isQAndAbove) { ForegroundInfo(NOTIFICATION_ID, notification, FOREGROUND_SERVICE_TYPE_DATA_SYNC) } else { ForegroundInfo(NOTIFICATION_ID, notification) diff --git a/app/src/main/java/com/aurora/store/util/CertUtil.kt b/app/src/main/java/com/aurora/store/util/CertUtil.kt index 9310e97d8..2ec74ec5d 100644 --- a/app/src/main/java/com/aurora/store/util/CertUtil.kt +++ b/app/src/main/java/com/aurora/store/util/CertUtil.kt @@ -123,7 +123,7 @@ object CertUtil { private fun getX509Certificates(context: Context, packageName: String): List { return try { val packageInfo = getPackageInfoWithSignature(context, packageName) - if (isPAndAbove()) { + if (isPAndAbove) { if (packageInfo.signingInfo!!.hasMultipleSigners()) { packageInfo.signingInfo!!.apkContentsSigners.map { it.generateX509Certificate() } } else { @@ -140,7 +140,7 @@ object CertUtil { } private fun getPackageInfoWithSignature(context: Context, packageName: String): PackageInfo { - return if (isPAndAbove()) { + return if (isPAndAbove) { getPackageInfo(context, packageName, PackageManager.GET_SIGNING_CERTIFICATES) } else { @Suppress("DEPRECATION") 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 896ae6ef3..9ef74127e 100644 --- a/app/src/main/java/com/aurora/store/util/PackageUtil.kt +++ b/app/src/main/java/com/aurora/store/util/PackageUtil.kt @@ -64,7 +64,7 @@ object PackageUtil { } fun isSharedLibrary(context: Context, packageName: String): Boolean { - return if (isOAndAbove()) { + return if (isOAndAbove) { getAllSharedLibraries(context).any { it.name == packageName } } else { false @@ -72,9 +72,9 @@ object PackageUtil { } fun isSharedLibraryInstalled(context: Context, packageName: String, versionCode: Int): Boolean { - return if (isOAndAbove()) { + return if (isOAndAbove) { val sharedLibraries = getAllSharedLibraries(context) - if (isPAndAbove()) { + if (isPAndAbove) { sharedLibraries.any { it.name == packageName && it.longVersion == versionCode.toLong() } @@ -148,7 +148,7 @@ object PackageUtil { } fun getInstallUnknownAppsIntent(): Intent { - return if (isOAndAbove()) { + return if (isOAndAbove) { Intent( Settings.ACTION_MANAGE_UNKNOWN_APP_SOURCES, Uri.parse("package:${BuildConfig.APPLICATION_ID}") @@ -159,7 +159,7 @@ object PackageUtil { } fun canRequestPackageInstalls(context: Context): Boolean { - return if (isOAndAbove()) { + return if (isOAndAbove) { context.packageManager.canRequestPackageInstalls() } else { @Suppress("DEPRECATION") @@ -174,7 +174,7 @@ object PackageUtil { @Throws(Exception::class) fun getPackageInfo(context: Context, packageName: String, flags: Int = 0): PackageInfo { - return if (isTAndAbove()) { + return if (isTAndAbove) { context.packageManager.getPackageInfo( packageName, PackageInfoFlags.of(flags.toLong()) @@ -200,9 +200,9 @@ object PackageUtil { } private fun getAllSharedLibraries(context: Context, flags: Int = 0): List { - return if (isTAndAbove()) { + return if (isTAndAbove) { context.packageManager.getSharedLibraries(PackageInfoFlags.of(flags.toLong())) - } else if (isOAndAbove()) { + } else if (isOAndAbove) { context.packageManager.getSharedLibraries(flags) } else { emptyList() diff --git a/app/src/main/java/com/aurora/store/view/ui/onboarding/PermissionsFragment.kt b/app/src/main/java/com/aurora/store/view/ui/onboarding/PermissionsFragment.kt index 2bcc4fbf5..faf829674 100644 --- a/app/src/main/java/com/aurora/store/view/ui/onboarding/PermissionsFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/onboarding/PermissionsFragment.kt @@ -49,7 +49,7 @@ class PermissionsFragment : BaseFragment() Permission( PermissionType.INSTALL_UNKNOWN_APPS, getString(R.string.onboarding_permission_installer), - if (isOAndAbove()) { + if (isOAndAbove) { getString(R.string.onboarding_permission_installer_desc) } else { getString(R.string.onboarding_permission_installer_legacy_desc) @@ -57,7 +57,7 @@ class PermissionsFragment : BaseFragment() ) ) - if (isRAndAbove()) { + if (isRAndAbove) { permissions.add( Permission( PermissionType.STORAGE_MANAGER, @@ -77,7 +77,7 @@ class PermissionsFragment : BaseFragment() ) } - if (isMAndAbove()) { + if (isMAndAbove) { permissions.add( Permission( PermissionType.DOZE_WHITELIST, @@ -88,7 +88,7 @@ class PermissionsFragment : BaseFragment() ) } - if (isTAndAbove()) { + if (isTAndAbove) { permissions.add( Permission( PermissionType.POST_NOTIFICATIONS, @@ -99,7 +99,7 @@ class PermissionsFragment : BaseFragment() ) } - if (isSAndAbove()) { + if (isSAndAbove) { permissions.add( Permission( PermissionType.APP_LINKS, diff --git a/app/src/main/java/com/aurora/store/view/ui/preferences/InstallerFragment.kt b/app/src/main/java/com/aurora/store/view/ui/preferences/InstallerFragment.kt index a26f21e59..c4f85b634 100644 --- a/app/src/main/java/com/aurora/store/view/ui/preferences/InstallerFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/preferences/InstallerFragment.kt @@ -79,7 +79,7 @@ class InstallerFragment : BaseFragment() { installerId = Preferences.getInteger(requireContext(), PREFERENCE_INSTALLER_ID) - if (isOAndAbove() && AppInstaller.hasShizukuOrSui(requireContext())) { + if (isOAndAbove && AppInstaller.hasShizukuOrSui(requireContext())) { Shizuku.addBinderReceivedListenerSticky(shizukuAliveListener) Shizuku.addBinderDeadListener(shizukuDeadListener) Shizuku.addRequestPermissionResultListener(shizukuResultListener) @@ -102,13 +102,13 @@ class InstallerFragment : BaseFragment() { } } - if (isMIUI() && !isMiuiOptimizationDisabled()) { + if (isMIUI && !isMiuiOptimizationDisabled) { findNavController().navigate(R.id.deviceMiuiSheet) } } override fun onDestroy() { - if (isOAndAbove() && AppInstaller.hasShizukuOrSui(requireContext())) { + if (isOAndAbove && AppInstaller.hasShizukuOrSui(requireContext())) { Shizuku.removeBinderReceivedListener(shizukuAliveListener) Shizuku.removeBinderDeadListener(shizukuDeadListener) Shizuku.removeRequestPermissionResultListener(shizukuResultListener) @@ -119,7 +119,7 @@ class InstallerFragment : BaseFragment() { private fun save(installerId: Int) { when (installerId) { 0 -> { - if (isMIUI() && !isMiuiOptimizationDisabled()) { + if (isMIUI && !isMiuiOptimizationDisabled) { findNavController().navigate(R.id.deviceMiuiSheet) } this.installerId = installerId @@ -163,7 +163,7 @@ class InstallerFragment : BaseFragment() { } 5 -> { - if (isOAndAbove() && AppInstaller.hasShizukuOrSui(requireContext())) { + if (isOAndAbove && AppInstaller.hasShizukuOrSui(requireContext())) { if (shizukuAlive && AppInstaller.hasShizukuPerm()) { this.installerId = installerId save(PREFERENCE_INSTALLER_ID, installerId) diff --git a/app/src/main/java/com/aurora/store/view/ui/preferences/UIPreference.kt b/app/src/main/java/com/aurora/store/view/ui/preferences/UIPreference.kt index f5a09277f..3bcae7fbd 100644 --- a/app/src/main/java/com/aurora/store/view/ui/preferences/UIPreference.kt +++ b/app/src/main/java/com/aurora/store/view/ui/preferences/UIPreference.kt @@ -39,7 +39,7 @@ class UIPreference : BasePreferenceFragment() { setPreferencesFromResource(R.xml.preferences_ui, rootKey) findPreference("PREFERENCE_APP_LANGUAGE")?.apply { - if (isTAndAbove()) { + if (isTAndAbove) { summary = Locale.getDefault().displayName setOnPreferenceClickListener { startActivity(Intent(Settings.ACTION_APP_LOCALE_SETTINGS).apply { diff --git a/app/src/main/java/com/aurora/store/view/ui/sheets/NetworkDialogSheet.kt b/app/src/main/java/com/aurora/store/view/ui/sheets/NetworkDialogSheet.kt index 086efba08..0351b3c1c 100644 --- a/app/src/main/java/com/aurora/store/view/ui/sheets/NetworkDialogSheet.kt +++ b/app/src/main/java/com/aurora/store/view/ui/sheets/NetworkDialogSheet.kt @@ -49,7 +49,7 @@ class NetworkDialogSheet : BaseDialogSheet() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) binding.btnAction.setOnClickListener { - if (isQAndAbove()) { + if (isQAndAbove) { startActivity(Intent(Settings.Panel.ACTION_INTERNET_CONNECTIVITY)) } else { try { diff --git a/app/src/main/java/com/aurora/store/viewmodel/network/NetworkViewModel.kt b/app/src/main/java/com/aurora/store/viewmodel/network/NetworkViewModel.kt index c333872d5..41b9d4c92 100644 --- a/app/src/main/java/com/aurora/store/viewmodel/network/NetworkViewModel.kt +++ b/app/src/main/java/com/aurora/store/viewmodel/network/NetworkViewModel.kt @@ -64,7 +64,7 @@ class NetworkViewModel @Inject constructor( val networkRequest = NetworkRequest.Builder() .addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET) - if (isMAndAbove()) { + if (isMAndAbove) { networkRequest.addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED) }