From e0bc6dafa078628c98854e8e1be904f3546b9838 Mon Sep 17 00:00:00 2001 From: darken Date: Tue, 16 May 2023 07:46:13 +0200 Subject: [PATCH 1/6] Bump gradle --- .github/workflows/code-checks.yml | 8 ++++---- .github/workflows/release-tag.yml | 4 ++-- app-common/build.gradle.kts | 7 ++++--- app-wear/build.gradle.kts | 7 ++++--- app/build.gradle.kts | 8 ++++---- build.gradle.kts | 2 +- buildSrc/build.gradle.kts | 2 +- gradle.properties | 8 ++++++-- gradle/wrapper/gradle-wrapper.properties | 6 +++--- 9 files changed, 29 insertions(+), 23 deletions(-) diff --git a/.github/workflows/code-checks.yml b/.github/workflows/code-checks.yml index c5030ca6..ccfb7d27 100644 --- a/.github/workflows/code-checks.yml +++ b/.github/workflows/code-checks.yml @@ -18,10 +18,10 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - - name: Set up JDK 11 + - name: Set up JDK 17 uses: actions/setup-java@v3 with: - java-version: '11' + java-version: '17' distribution: 'adopt' cache: gradle - name: Grant execute permission for gradlew @@ -40,10 +40,10 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - - name: Set up JDK 11 + - name: Set up JDK 17 uses: actions/setup-java@v3 with: - java-version: '11' + java-version: '17' distribution: 'adopt' cache: gradle - name: Grant execute permission for gradlew diff --git a/.github/workflows/release-tag.yml b/.github/workflows/release-tag.yml index caf796ec..b34f5e69 100644 --- a/.github/workflows/release-tag.yml +++ b/.github/workflows/release-tag.yml @@ -38,7 +38,7 @@ jobs: uses: actions/setup-java@v3 with: distribution: 'adopt' - java-version: 11 + java-version: 17 - name: Assemble beta APK if: contains(steps.tagger.outputs.tag, '-beta') @@ -130,7 +130,7 @@ jobs: uses: actions/setup-java@v3 with: distribution: 'adopt' - java-version: 11 + java-version: 17 - name: Set up ruby env uses: ruby/setup-ruby@v1 diff --git a/app-common/build.gradle.kts b/app-common/build.gradle.kts index 6a901b09..add0b9c8 100644 --- a/app-common/build.gradle.kts +++ b/app-common/build.gradle.kts @@ -8,6 +8,7 @@ apply(plugin = "dagger.hilt.android.plugin") android { compileSdk = ProjectConfig.compileSdk + namespace = "${ProjectConfig.packageName}.common" defaultConfig { minSdk = ProjectConfig.minSdk @@ -33,12 +34,12 @@ android { compileOptions { isCoreLibraryDesugaringEnabled = true - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } kotlinOptions { - jvmTarget = "1.8" + jvmTarget = "17" freeCompilerArgs = freeCompilerArgs + listOf( "-opt-in=kotlin.ExperimentalStdlibApi", "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi", diff --git a/app-wear/build.gradle.kts b/app-wear/build.gradle.kts index 40996fe4..aca46035 100644 --- a/app-wear/build.gradle.kts +++ b/app-wear/build.gradle.kts @@ -9,6 +9,7 @@ apply(plugin = "androidx.navigation.safeargs.kotlin") android { compileSdk = ProjectConfig.compileSdk + namespace = "${ProjectConfig.packageName}.wear" defaultConfig { applicationId = ProjectConfig.packageName @@ -102,12 +103,12 @@ android { compileOptions { isCoreLibraryDesugaringEnabled = true - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } kotlinOptions { - jvmTarget = "1.8" + jvmTarget = "17" freeCompilerArgs = freeCompilerArgs + listOf( "-opt-in=kotlin.ExperimentalStdlibApi", "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi", diff --git a/app/build.gradle.kts b/app/build.gradle.kts index f03686cf..5d3271f0 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -8,8 +8,8 @@ apply(plugin = "dagger.hilt.android.plugin") apply(plugin = "androidx.navigation.safeargs.kotlin") android { - compileSdk = ProjectConfig.compileSdk + namespace = "${ProjectConfig.packageName}" defaultConfig { applicationId = ProjectConfig.packageName @@ -100,12 +100,12 @@ android { compileOptions { isCoreLibraryDesugaringEnabled = true - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } kotlinOptions { - jvmTarget = "1.8" + jvmTarget = "17" freeCompilerArgs = freeCompilerArgs + listOf( "-opt-in=kotlin.ExperimentalStdlibApi", "-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi", diff --git a/build.gradle.kts b/build.gradle.kts index c8d6716e..f3ebdb25 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -4,7 +4,7 @@ buildscript { mavenCentral() } dependencies { - classpath("com.android.tools.build:gradle:7.3.1") + classpath("com.android.tools.build:gradle:8.0.1") classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${Versions.Kotlin.core}") classpath("com.google.dagger:hilt-android-gradle-plugin:${Versions.Dagger.core}") classpath("androidx.navigation:navigation-safe-args-gradle-plugin:${Versions.AndroidX.Navigation.core}") diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index 94ca4cb3..c5fe09dd 100644 --- a/buildSrc/build.gradle.kts +++ b/buildSrc/build.gradle.kts @@ -8,7 +8,7 @@ repositories { mavenCentral() } dependencies { - implementation("com.android.tools.build:gradle:7.3.1") + implementation("com.android.tools.build:gradle:8.0.1") implementation("org.jetbrains.kotlin:kotlin-gradle-plugin:1.8.0") implementation("com.squareup:javapoet:1.13.0") } \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 25217527..b301f0d2 100644 --- a/gradle.properties +++ b/gradle.properties @@ -6,7 +6,7 @@ # http://www.gradle.org/docs/current/userguide/build_environment.html # Specifies the JVM arguments used for the daemon process. # The setting is particularly useful for tweaking memory settings. -org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8 +org.gradle.jvmargs=-Xmx4g -Dfile.encoding=UTF-8 # When configured, Gradle will run in incubating parallel mode. # This option should only be used with decoupled projects. More details, visit # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects @@ -16,4 +16,8 @@ org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8 # https://developer.android.com/topic/libraries/support-library/androidx-rn android.useAndroidX=true # Kotlin code style for this project: "official" or "obsolete": -kotlin.code.style=official \ No newline at end of file +kotlin.code.style=official +android.defaults.buildfeatures.buildconfig=true +android.nonTransitiveRClass=false +android.nonFinalResIds=false +org.gradle.unsafe.configuration-cache=false \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 514340ee..3be66318 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Sun Aug 28 21:26:18 CEST 2022 +#Tue May 16 07:17:06 CEST 2023 distributionBase=GRADLE_USER_HOME -distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-bin.zip distributionPath=wrapper/dists -zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists From 15f3a68f8ed002f590d31097f4a9a0d3700c0f11 Mon Sep 17 00:00:00 2001 From: darken Date: Tue, 16 May 2023 07:58:28 +0200 Subject: [PATCH 2/6] Use non transitive R classes to improve performance --- .../common/upgrade/core/UpgradeControlFoss.kt | 4 +-- .../eu/darken/capod/common/ClipboardHelper.kt | 3 +-- .../debug/recording/core/RecorderService.kt | 2 +- .../main/ui/overview/OverviewFragment.kt | 10 +++---- .../ui/overview/cards/pods/DualPodsCardVH.kt | 26 ++++++++++++++----- .../ui/overview/cards/pods/PodDeviceVH.kt | 3 +-- .../cards/pods/UnknownPodDeviceCardVH.kt | 4 +-- .../capod/main/ui/widget/WidgetProvider.kt | 18 ++++++++++--- .../capod/monitor/ui/MonitorNotifications.kt | 10 +++---- gradle.properties | 2 +- 10 files changed, 53 insertions(+), 29 deletions(-) diff --git a/app/src/foss/java/eu/darken/capod/common/upgrade/core/UpgradeControlFoss.kt b/app/src/foss/java/eu/darken/capod/common/upgrade/core/UpgradeControlFoss.kt index acccd464..7d666378 100644 --- a/app/src/foss/java/eu/darken/capod/common/upgrade/core/UpgradeControlFoss.kt +++ b/app/src/foss/java/eu/darken/capod/common/upgrade/core/UpgradeControlFoss.kt @@ -32,7 +32,7 @@ class UpgradeControlFoss @Inject constructor( override fun launchBillingFlow(activity: Activity) { MaterialAlertDialogBuilder(activity).apply { - setIcon(R.drawable.ic_heart) + setIcon(eu.darken.capod.common.R.drawable.ic_heart) setTitle(R.string.upgrade_capod_label) setMessage(R.string.upgrade_capod_description) setPositiveButton(R.string.foss_upgrade_donate_label) { _, _ -> @@ -68,6 +68,6 @@ class UpgradeControlFoss @Inject constructor( override val type: UpgradeRepo.Type = UpgradeRepo.Type.FOSS } - override fun getSponsorUrl(): String? = "https://github.com/sponsors/d4rken" + override fun getSponsorUrl(): String = "https://github.com/sponsors/d4rken" } \ No newline at end of file diff --git a/app/src/main/java/eu/darken/capod/common/ClipboardHelper.kt b/app/src/main/java/eu/darken/capod/common/ClipboardHelper.kt index 4f5902de..dac41740 100644 --- a/app/src/main/java/eu/darken/capod/common/ClipboardHelper.kt +++ b/app/src/main/java/eu/darken/capod/common/ClipboardHelper.kt @@ -6,7 +6,6 @@ import android.content.Context import android.os.Handler import android.os.Looper import dagger.hilt.android.qualifiers.ApplicationContext -import eu.darken.capod.R import eu.darken.capod.common.debug.logging.log import eu.darken.capod.common.debug.logging.logTag import java.util.concurrent.locks.ReentrantLock @@ -41,7 +40,7 @@ class ClipboardHelper @Inject constructor( } fun copyToClipboard(text: String) { - val clip = ClipData.newPlainText(context.getString(R.string.app_name), text) + val clip = ClipData.newPlainText(context.getString(eu.darken.capod.common.R.string.app_name), text) clipboard.setPrimaryClip(clip) } diff --git a/app/src/main/java/eu/darken/capod/common/debug/recording/core/RecorderService.kt b/app/src/main/java/eu/darken/capod/common/debug/recording/core/RecorderService.kt index 5825287a..087101d3 100644 --- a/app/src/main/java/eu/darken/capod/common/debug/recording/core/RecorderService.kt +++ b/app/src/main/java/eu/darken/capod/common/debug/recording/core/RecorderService.kt @@ -73,7 +73,7 @@ class RecorderService : Service2() { .setPriority(NotificationCompat.PRIORITY_HIGH) .setSmallIcon(R.drawable.ic_baseline_bug_report_24) .setContentText("Idle") - .setContentTitle(getString(R.string.app_name)) + .setContentTitle(getString(eu.darken.capod.common.R.string.app_name)) .addAction(NotificationCompat.Action.Builder(0, getString(R.string.general_done_action), stopPi).build()) startForeground(NOTIFICATION_ID, builder.build()) diff --git a/app/src/main/java/eu/darken/capod/main/ui/overview/OverviewFragment.kt b/app/src/main/java/eu/darken/capod/main/ui/overview/OverviewFragment.kt index 0f699947..3b2df596 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/overview/OverviewFragment.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/overview/OverviewFragment.kt @@ -115,18 +115,18 @@ class OverviewFragment : Fragment3(R.layout.main_fragment) { val baseTitle = when (info.type) { UpgradeRepo.Type.GPLAY -> { if (info.isPro) { - getString(R.string.app_name_pro) + getString(eu.darken.capod.common.R.string.app_name_pro) } else { gplay.isVisible = true - getString(R.string.app_name) + getString(eu.darken.capod.common.R.string.app_name) } } UpgradeRepo.Type.FOSS -> { if (info.isPro) { - getString(R.string.app_name_foss) + getString(eu.darken.capod.common.R.string.app_name_foss) } else { donate.isVisible = true - getString(R.string.app_name) + getString(eu.darken.capod.common.R.string.app_name) } } }.split(" ".toRegex()) @@ -141,7 +141,7 @@ class OverviewFragment : Fragment3(R.layout.main_fragment) { } builder.append(colorString(requireContext(), color, baseTitle[1])) } else { - getString(R.string.app_name) + getString(eu.darken.capod.common.R.string.app_name) } } vm.launchUpgradeFlow.observe2 { diff --git a/app/src/main/java/eu/darken/capod/main/ui/overview/cards/pods/DualPodsCardVH.kt b/app/src/main/java/eu/darken/capod/main/ui/overview/cards/pods/DualPodsCardVH.kt index 9883c2d3..7ee3d1d8 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/overview/cards/pods/DualPodsCardVH.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/overview/cards/pods/DualPodsCardVH.kt @@ -7,9 +7,21 @@ import androidx.core.view.isInvisible import eu.darken.capod.R import eu.darken.capod.common.lists.binding import eu.darken.capod.databinding.OverviewPodsDualItemBinding -import eu.darken.capod.pods.core.* +import eu.darken.capod.pods.core.DualPodDevice +import eu.darken.capod.pods.core.HasCase +import eu.darken.capod.pods.core.HasChargeDetectionDual +import eu.darken.capod.pods.core.HasDualMicrophone +import eu.darken.capod.pods.core.HasEarDetectionDual +import eu.darken.capod.pods.core.HasPodStyle +import eu.darken.capod.pods.core.HasStateDetection import eu.darken.capod.pods.core.apple.DualApplePods import eu.darken.capod.pods.core.apple.DualApplePods.LidState +import eu.darken.capod.pods.core.firstSeenFormatted +import eu.darken.capod.pods.core.getBatteryDrawable +import eu.darken.capod.pods.core.getBatteryLevelCase +import eu.darken.capod.pods.core.getBatteryLevelLeftPod +import eu.darken.capod.pods.core.getBatteryLevelRightPod +import eu.darken.capod.pods.core.lastSeenFormatted import java.time.Duration import java.time.Instant @@ -42,8 +54,10 @@ class DualPodsCardVH(parent: ViewGroup) : podLeftIcon.setImageResource(device.leftPodIcon) podRightIcon.setImageResource(device.rightPodIcon) - lastSeen.text = context.getString(R.string.last_seen_x, device.lastSeenFormatted(item.now)) - firstSeen.text = context.getString(R.string.first_seen_x, device.firstSeenFormatted(item.now)) + lastSeen.text = + context.getString(eu.darken.capod.common.R.string.last_seen_x, device.lastSeenFormatted(item.now)) + firstSeen.text = + context.getString(eu.darken.capod.common.R.string.first_seen_x, device.firstSeenFormatted(item.now)) firstSeen.isGone = Duration.between(device.seenFirstAt, device.seenLastAt).toMinutes() < 1 reception.text = item.getReceptionText() @@ -131,9 +145,9 @@ class DualPodsCardVH(parent: ViewGroup) : device.apply { if (this is DualApplePods) { podCaseLidLabel.text = when (caseLidState) { - LidState.OPEN -> context.getString(R.string.pods_case_status_open_label) - LidState.CLOSED -> context.getString(R.string.pods_case_status_closed_label) - else -> context.getString(R.string.pods_case_unknown_state) + LidState.OPEN -> context.getString(eu.darken.capod.common.R.string.pods_case_status_open_label) + LidState.CLOSED -> context.getString(eu.darken.capod.common.R.string.pods_case_status_closed_label) + else -> context.getString(eu.darken.capod.common.R.string.pods_case_unknown_state) } val hideInfo = !listOf(LidState.OPEN, LidState.CLOSED).contains(caseLidState) diff --git a/app/src/main/java/eu/darken/capod/main/ui/overview/cards/pods/PodDeviceVH.kt b/app/src/main/java/eu/darken/capod/main/ui/overview/cards/pods/PodDeviceVH.kt index 7c741017..c0844710 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/overview/cards/pods/PodDeviceVH.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/overview/cards/pods/PodDeviceVH.kt @@ -3,7 +3,6 @@ package eu.darken.capod.main.ui.overview.cards.pods import android.view.ViewGroup import androidx.annotation.LayoutRes import androidx.viewbinding.ViewBinding -import eu.darken.capod.R import eu.darken.capod.common.lists.BindableVH import eu.darken.capod.common.lists.differ.DifferItem import eu.darken.capod.common.lists.modular.ModularAdapter @@ -19,7 +18,7 @@ abstract class PodDeviceVH( fun Item.getReceptionText(): String = device.getSignalQuality(context) .let { if (showDebug) "$it ${device.seenCounter}" else it } - .let { if (isMainPod) "$it\n(${getString(R.string.pods_yours)})" else it } + .let { if (isMainPod) "$it\n(${getString(eu.darken.capod.common.R.string.pods_yours)})" else it } interface Item : OverviewAdapter.Item { diff --git a/app/src/main/java/eu/darken/capod/main/ui/overview/cards/pods/UnknownPodDeviceCardVH.kt b/app/src/main/java/eu/darken/capod/main/ui/overview/cards/pods/UnknownPodDeviceCardVH.kt index 90912734..582a9ee4 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/overview/cards/pods/UnknownPodDeviceCardVH.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/overview/cards/pods/UnknownPodDeviceCardVH.kt @@ -32,8 +32,8 @@ class UnknownPodDeviceCardVH(parent: ViewGroup) : reception.text = item.getReceptionText() details.text = when (item.device) { - is ApplePods -> getString(R.string.pods_unknown_contact_dev) - else -> getString(R.string.pods_unknown_label) + is ApplePods -> getString(eu.darken.capod.common.R.string.pods_unknown_contact_dev) + else -> getString(eu.darken.capod.common.R.string.pods_unknown_label) } rawdata.text = device.rawDataHex.joinToString("\n") diff --git a/app/src/main/java/eu/darken/capod/main/ui/widget/WidgetProvider.kt b/app/src/main/java/eu/darken/capod/main/ui/widget/WidgetProvider.kt index c7f31fd4..ace9f44a 100644 --- a/app/src/main/java/eu/darken/capod/main/ui/widget/WidgetProvider.kt +++ b/app/src/main/java/eu/darken/capod/main/ui/widget/WidgetProvider.kt @@ -21,7 +21,19 @@ import eu.darken.capod.common.upgrade.isPro import eu.darken.capod.main.ui.MainActivity import eu.darken.capod.monitor.core.PodDeviceCache import eu.darken.capod.monitor.core.PodMonitor -import eu.darken.capod.pods.core.* +import eu.darken.capod.pods.core.DualPodDevice +import eu.darken.capod.pods.core.HasCase +import eu.darken.capod.pods.core.HasChargeDetectionDual +import eu.darken.capod.pods.core.HasEarDetection +import eu.darken.capod.pods.core.HasEarDetectionDual +import eu.darken.capod.pods.core.PodDevice +import eu.darken.capod.pods.core.PodFactory +import eu.darken.capod.pods.core.SinglePodDevice +import eu.darken.capod.pods.core.getBatteryDrawable +import eu.darken.capod.pods.core.getBatteryLevelCase +import eu.darken.capod.pods.core.getBatteryLevelHeadset +import eu.darken.capod.pods.core.getBatteryLevelLeftPod +import eu.darken.capod.pods.core.getBatteryLevelRightPod import finish2 import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.launch @@ -135,7 +147,7 @@ class WidgetProvider : AppWidgetProvider() { setOnClickPendingIntent(R.id.widget_root, pendingIntent) - setTextViewText(R.id.primary, context.getString(R.string.pods_unknown_label)) + setTextViewText(R.id.primary, context.getString(eu.darken.capod.common.R.string.pods_unknown_label)) } private fun createNoDeviceLayout( @@ -151,7 +163,7 @@ class WidgetProvider : AppWidgetProvider() { setOnClickPendingIntent(R.id.widget_root, pendingIntent) - setTextViewText(R.id.primary, context.getString(R.string.overview_nomaindevice_label)) + setTextViewText(R.id.primary, context.getString(eu.darken.capod.common.R.string.overview_nomaindevice_label)) } private fun createDualPodLayout( diff --git a/app/src/main/java/eu/darken/capod/monitor/ui/MonitorNotifications.kt b/app/src/main/java/eu/darken/capod/monitor/ui/MonitorNotifications.kt index 39120327..0b6fc856 100644 --- a/app/src/main/java/eu/darken/capod/monitor/ui/MonitorNotifications.kt +++ b/app/src/main/java/eu/darken/capod/monitor/ui/MonitorNotifications.kt @@ -53,9 +53,9 @@ class MonitorNotifications @Inject constructor( setChannelId(NOTIFICATION_CHANNEL_ID) setContentIntent(openPi) priority = NotificationCompat.PRIORITY_LOW - setSmallIcon(R.drawable.devic_earbuds_generic_both) + setSmallIcon(eu.darken.capod.common.R.drawable.devic_earbuds_generic_both) setOngoing(true) - setContentTitle(context.getString(R.string.app_name)) + setContentTitle(context.getString(eu.darken.capod.common.R.string.app_name)) } } @@ -64,9 +64,9 @@ class MonitorNotifications @Inject constructor( return builder.apply { setCustomContentView(null) setStyle(NotificationCompat.BigTextStyle()) - setContentTitle(context.getString(R.string.pods_none_label_short)) - setSubText(context.getString(R.string.app_name)) - setSmallIcon(R.drawable.devic_earbuds_generic_both) + setContentTitle(context.getString(eu.darken.capod.common.R.string.pods_none_label_short)) + setSubText(context.getString(eu.darken.capod.common.R.string.app_name)) + setSmallIcon(eu.darken.capod.common.R.drawable.devic_earbuds_generic_both) } } diff --git a/gradle.properties b/gradle.properties index b301f0d2..cfc84bba 100644 --- a/gradle.properties +++ b/gradle.properties @@ -18,6 +18,6 @@ android.useAndroidX=true # Kotlin code style for this project: "official" or "obsolete": kotlin.code.style=official android.defaults.buildfeatures.buildconfig=true -android.nonTransitiveRClass=false +android.nonTransitiveRClass=true android.nonFinalResIds=false org.gradle.unsafe.configuration-cache=false \ No newline at end of file From 08a796e621050b4cddecf31fba0ed0322d28036d Mon Sep 17 00:00:00 2001 From: darken Date: Tue, 16 May 2023 08:05:59 +0200 Subject: [PATCH 3/6] Fix wear namespace --- app-wear/build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app-wear/build.gradle.kts b/app-wear/build.gradle.kts index aca46035..039b27d7 100644 --- a/app-wear/build.gradle.kts +++ b/app-wear/build.gradle.kts @@ -9,7 +9,7 @@ apply(plugin = "androidx.navigation.safeargs.kotlin") android { compileSdk = ProjectConfig.compileSdk - namespace = "${ProjectConfig.packageName}.wear" + namespace = "${ProjectConfig.packageName}" defaultConfig { applicationId = ProjectConfig.packageName From a8f9b1f73295ff36cd4bdda8e8a554ff1239717c Mon Sep 17 00:00:00 2001 From: darken Date: Tue, 16 May 2023 08:07:48 +0200 Subject: [PATCH 4/6] Use non final resource ids --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index cfc84bba..436fdad1 100644 --- a/gradle.properties +++ b/gradle.properties @@ -19,5 +19,5 @@ android.useAndroidX=true kotlin.code.style=official android.defaults.buildfeatures.buildconfig=true android.nonTransitiveRClass=true -android.nonFinalResIds=false +android.nonFinalResIds=true org.gradle.unsafe.configuration-cache=false \ No newline at end of file From d5354e5156efcceb03894a18e82f5d7c30fc4616 Mon Sep 17 00:00:00 2001 From: darken Date: Tue, 16 May 2023 08:55:35 +0200 Subject: [PATCH 5/6] Fix resource reference --- .../eu/darken/capod/common/upgrade/core/UpgradeRepoGplay.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/gplay/java/eu/darken/capod/common/upgrade/core/UpgradeRepoGplay.kt b/app/src/gplay/java/eu/darken/capod/common/upgrade/core/UpgradeRepoGplay.kt index 50b2c969..a84e3566 100644 --- a/app/src/gplay/java/eu/darken/capod/common/upgrade/core/UpgradeRepoGplay.kt +++ b/app/src/gplay/java/eu/darken/capod/common/upgrade/core/UpgradeRepoGplay.kt @@ -73,7 +73,7 @@ class UpgradeRepoGplay @Inject constructor( override fun launchBillingFlow(activity: Activity) { MaterialAlertDialogBuilder(activity).apply { - setIcon(R.drawable.ic_heart) + setIcon(eu.darken.capod.common.R.drawable.ic_heart) setTitle(R.string.upgrade_capod_label) setMessage(R.string.upgrade_capod_description) setPositiveButton(R.string.general_upgrade_action) { _, _ -> From a10216520b3c440f0ea41b0fbb80e5821ab693c9 Mon Sep 17 00:00:00 2001 From: darken Date: Tue, 16 May 2023 08:59:54 +0200 Subject: [PATCH 6/6] Fix resource reference --- .../darken/capod/wear/ui/overview/cards/pods/PodDeviceVH.kt | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/app-wear/src/main/java/eu/darken/capod/wear/ui/overview/cards/pods/PodDeviceVH.kt b/app-wear/src/main/java/eu/darken/capod/wear/ui/overview/cards/pods/PodDeviceVH.kt index b5de2298..df71467e 100644 --- a/app-wear/src/main/java/eu/darken/capod/wear/ui/overview/cards/pods/PodDeviceVH.kt +++ b/app-wear/src/main/java/eu/darken/capod/wear/ui/overview/cards/pods/PodDeviceVH.kt @@ -3,13 +3,12 @@ package eu.darken.capod.wear.ui.overview.cards.pods import android.view.ViewGroup import androidx.annotation.LayoutRes import androidx.viewbinding.ViewBinding -import eu.darken.capod.R import eu.darken.capod.common.lists.BindableVH import eu.darken.capod.common.lists.differ.DifferItem import eu.darken.capod.common.lists.modular.ModularAdapter -import eu.darken.capod.wear.ui.overview.OverviewAdapter import eu.darken.capod.pods.core.PodDevice import eu.darken.capod.pods.core.getSignalQuality +import eu.darken.capod.wear.ui.overview.OverviewAdapter import java.time.Instant abstract class PodDeviceVH( @@ -19,7 +18,7 @@ abstract class PodDeviceVH( fun Item.getReceptionText(): String = device.getSignalQuality(context) .let { if (showDebug) "$it ${device.seenCounter}" else it } - .let { if (isMainPod) "$it\n(${getString(R.string.pods_yours)})" else it } + .let { if (isMainPod) "$it\n(${getString(eu.darken.capod.common.R.string.pods_yours)})" else it } interface Item : OverviewAdapter.Item {