Skip to content

Commit

Permalink
Merge pull request #288 from 75py/feature/update-dependencies-manually
Browse files Browse the repository at this point in the history
Update dependencies and gradle settings for Compose
  • Loading branch information
75py authored Oct 6, 2024
2 parents 16fc03d + 72dc800 commit f50e106
Show file tree
Hide file tree
Showing 7 changed files with 38 additions and 29 deletions.
7 changes: 3 additions & 4 deletions app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import java.util.Properties
plugins {
alias(libs.plugins.androidApp)
alias(libs.plugins.kotlinAndroid)
alias(libs.plugins.kotlinPluginCompose)
id("com.google.android.gms.oss-licenses-plugin")
alias(libs.plugins.ktlint)
}
Expand Down Expand Up @@ -48,10 +49,7 @@ android {
buildFeatures {
compose = true
}
composeOptions {
kotlinCompilerExtensionVersion = libs.versions.composeCompilerExtVersion.get()
}
packagingOptions {
packaging {
resources {
excludes += "/META-INF/{AL2.0,LGPL2.1}"
excludes += "META-INF/LICENSE.md"
Expand All @@ -64,6 +62,7 @@ dependencies {
implementation(libs.androidxKtx)
implementation(libs.composeUi)
implementation(libs.composeMaterial)
implementation(libs.composeMaterialIconsExtended)
implementation(libs.composeToolingPreview)
implementation(libs.lifecycleRuntimeKtx)
implementation(libs.activityCompose)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,9 +65,9 @@ class LoadPackagesUseCaseTest {
val disableButtonLabel =
InstrumentationRegistry.getInstrumentation().context.getString(
if (model.isEnabled) {
com.nagopy.android.aplin.test.R.string.test_btn_enable
} else {
com.nagopy.android.aplin.test.R.string.test_btn_disable
} else {
com.nagopy.android.aplin.test.R.string.test_btn_enable
}
)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,11 @@ class CategorizePackageUseCase(
}

fun isBundled(packageInfo: PackageInfo): Boolean {
return packageInfo.applicationInfo.flags and ApplicationInfo.FLAG_SYSTEM > 0
val flags = packageInfo.applicationInfo?.flags
if (flags == null) {
return false
}
return flags and ApplicationInfo.FLAG_SYSTEM > 0
}

fun isDisableable(
Expand Down Expand Up @@ -94,7 +98,7 @@ class CategorizePackageUseCase(

// not implemented: hasBaseUserRestriction

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q && packageInfo.applicationInfo.isResourceOverlay) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q && packageInfo.applicationInfo?.isResourceOverlay == true) {
if (isBundled) {
enabled = false
} else {
Expand All @@ -110,8 +114,8 @@ class CategorizePackageUseCase(
if (homePackages.contains(packageInfo.packageName) || isSystemPackage(packageInfo)
) {
// Disable button for core system applications.
} else if (packageInfo.applicationInfo.enabled && !isDisabledUntilUsed(packageInfo)) {
disableable = !keepEnabledPackages.contains(packageInfo.applicationInfo.packageName)
} else if (packageInfo.applicationInfo?.enabled == true && !isDisabledUntilUsed(packageInfo)) {
disableable = !keepEnabledPackages.contains(packageInfo.applicationInfo?.packageName)
} else {
disableable = true
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,18 +31,18 @@ class LoadPackagesUseCase(
currentDefaultHomePackageName
)
}
.map { it.toPackageModel() }
.mapNotNull { it.toPackageModel() }
.sortedWith(compareBy({ it.label }, { it.packageName }))
val disabled = src
.filter { !it.applicationInfo.enabled }
.map { it.toPackageModel() }
.filter { it.applicationInfo?.enabled == false }
.mapNotNull { it.toPackageModel() }
.sortedWith(compareBy({ it.label }, { it.packageName }))
val users = src
.filter { !categorizePackageUseCase.isBundled(it) }
.map { it.toPackageModel() }
.mapNotNull { it.toPackageModel() }
.sortedWith(compareBy({ it.label }, { it.packageName }))
val all = src
.map { it.toPackageModel() }
.mapNotNull { it.toPackageModel() }
.sortedWith(compareBy({ it.label }, { it.packageName }))

PackagesModel(
Expand All @@ -54,7 +54,11 @@ class LoadPackagesUseCase(
}
}

private fun PackageInfo.toPackageModel(): PackageModel {
private fun PackageInfo.toPackageModel(): PackageModel? {
val applicationInfo = this.applicationInfo
if (applicationInfo == null) {
return null
}
return PackageModel(
packageName,
packageRepository.loadLabel(applicationInfo),
Expand Down
1 change: 1 addition & 0 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ plugins {
alias(libs.plugins.androidApp) apply false
alias(libs.plugins.androidLib) apply false
alias(libs.plugins.kotlinAndroid) apply false
alias(libs.plugins.kotlinPluginCompose) apply false
alias(libs.plugins.ktlint)
}

Expand Down
25 changes: 13 additions & 12 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,40 +1,39 @@
[versions]
# sdk
compileSdk = "34"
compileSdk = "35"
minSdk = "26"
targetSdk = "34"
targetSdk = "35"
javaVersion = "17"
composeCompilerExtVersion = "1.5.13"

# plugins
ossLicensesPlugin = "0.10.6"
androidGradlePlugin = "8.6.0"
androidGradlePlugin = "8.7.0"
kotlinAndroidPlugin = "2.0.20"
ktlintPlugin = "11.6.1"

# libraries
kotlin = "1.9.23"
kotlin = "2.0.20"
ktx = "1.13.1"
composeUi = "1.7.3"
composeMaterial = "1.7.2"
composeToolingPreview = "1.6.8"
lifecycleRuntimeKtx = "2.8.4"
activityCompose = "1.9.1"
composeMaterial = "1.7.3"
composeToolingPreview = "1.7.3"
lifecycleRuntimeKtx = "2.8.6"
activityCompose = "1.9.2"
junit = "4.13.2"
androidxTestExtJunit = "1.2.1"
androidxTestEspressoCore = "3.6.1"
androidxTestRunner = "1.6.1"
androidxTestRunner = "1.6.2"
androidxTestRules = "1.6.1"
androidxTestUiautomator = "2.3.0"
koinAndroid = "3.5.6"
kotlinReflect = "2.0.20"
accompanistDrawablepainter = "0.36.0"
logcat = "0.1"
navigationCompose = "2.7.7"
navigationCompose = "2.8.2"
ossLicensesPluginVersion = "0.10.6"
playServicesOssLicenses = "17.1.0"
appcompat = "1.7.0"
playServicesAds = "23.3.0"
playServicesAds = "23.4.0"
ump = "3.0.0"
preferenceKtx = "1.2.1"
mockk = "1.13.12"
Expand All @@ -48,12 +47,14 @@ androidApp = { id = "com.android.application", version.ref = "androidGradlePlugi
androidLib = { id = "com.android.library", version.ref = "androidGradlePlugin" }
kotlinAndroid = { id = "org.jetbrains.kotlin.android", version.ref = "kotlinAndroidPlugin" }
ktlint = { id = "org.jlleitschuh.gradle.ktlint", version.ref = "ktlintPlugin" }
kotlinPluginCompose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }

[libraries]
ossLicenses = { group = "com.google.android.gms", name = "oss-licenses-plugin", version.ref = "ossLicensesPlugin" }
androidxKtx = { group = "androidx.core", name = "core-ktx", version.ref = "ktx" }
composeUi = { group = "androidx.compose.ui", name = "ui", version.ref = "composeUi" }
composeMaterial = { group = "androidx.compose.material", name = "material", version.ref = "composeMaterial" }
composeMaterialIconsExtended = { group = "androidx.compose.material", name = "material-icons-extended", version.ref = "composeMaterial" }
composeToolingPreview = { group = "androidx.compose.ui", name = "ui-tooling-preview", version.ref = "composeToolingPreview" }
lifecycleRuntimeKtx = { group = "androidx.lifecycle", name = "lifecycle-runtime-ktx", version.ref = "lifecycleRuntimeKtx" }
activityCompose = { group = "androidx.activity", name = "activity-compose", version.ref = "activityCompose" }
Expand Down
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#Sat Apr 09 16:13:59 JST 2022
distributionBase=GRADLE_USER_HOME
distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME

0 comments on commit f50e106

Please sign in to comment.