From 5db99ba7d956760affb27fec535fc2afa05ffa04 Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Thu, 7 Jul 2022 15:54:17 +0200 Subject: [PATCH] Better apk and aab naming --- Habitica/build.gradle | 19 +++++++------------ .../res/layout/dialog_hatch_pet_button.xml | 7 +++++-- .../res/layout/dialog_pet_suggest_hatch.xml | 6 ++++-- .../android/habitica/modules/UserModule.java | 7 ++++++- .../tasks/BaseTasksRecyclerViewAdapter.kt | 6 +++--- .../common/habitica/api/HostConfig.kt | 12 +++++------- version.properties | 2 +- wearos/build.gradle | 3 +++ .../data/repositories/UserLocalRepository.kt | 3 ++- 9 files changed, 36 insertions(+), 29 deletions(-) diff --git a/Habitica/build.gradle b/Habitica/build.gradle index d5035923b..9886eeef7 100644 --- a/Habitica/build.gradle +++ b/Habitica/build.gradle @@ -78,7 +78,7 @@ dependencies { androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' androidTestImplementation 'androidx.test:runner:1.4.0' androidTestImplementation 'androidx.test:rules:1.4.0' - debugImplementation 'androidx.fragment:fragment-testing:1.4.1' + debugImplementation 'androidx.fragment:fragment-testing:1.5.0' androidTestImplementation 'androidx.test.ext:junit:1.1.3' androidTestImplementation 'androidx.test:core-ktx:1.4.0' androidTestImplementation 'androidx.test.ext:junit-ktx:1.1.3' @@ -108,15 +108,13 @@ dependencies { implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version" implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version" implementation "androidx.lifecycle:lifecycle-common-java8:$lifecycle_version" - implementation 'androidx.navigation:navigation-fragment-ktx:2.4.2' - implementation 'androidx.navigation:navigation-ui-ktx:2.4.2' - implementation "androidx.fragment:fragment-ktx:1.4.1" + implementation 'androidx.navigation:navigation-fragment-ktx:2.5.0' + implementation 'androidx.navigation:navigation-ui-ktx:2.5.0' + implementation "androidx.fragment:fragment-ktx:1.5.0" implementation "androidx.paging:paging-runtime-ktx:3.1.1" implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutines_version" implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutines_version" - coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.6' - implementation 'com.willowtreeapps:signinwithapplebutton:0.3' implementation project(':shared') @@ -149,9 +147,6 @@ android { buildConfigField "String", "TESTING_LEVEL", "\"production\"" resConfigs 'en', 'bg', 'de', 'en-rGB', 'es', 'fr', 'hr-rHR', 'in', 'it', 'iw', 'ja', 'ko', 'lt', 'nl', 'pl', 'pt-rBR', 'pt-rPT', 'ru', 'tr', 'zh', 'zh-rTW' - println app_version_code - println app_version_name - versionCode app_version_code versionName app_version_name @@ -159,6 +154,9 @@ android { testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunnerArguments clearPackageData: 'true' + + def formattedDate = new Date().format('yyMMdd') + archivesBaseName = "Habitica-${formattedDate}${versionCode}" } buildFeatures { @@ -266,9 +264,6 @@ android { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 - - // Flag to enable support for the new language APIs - coreLibraryDesugaringEnabled true } kotlinOptions { diff --git a/Habitica/res/layout/dialog_hatch_pet_button.xml b/Habitica/res/layout/dialog_hatch_pet_button.xml index 895be21a2..1fa18d8aa 100644 --- a/Habitica/res/layout/dialog_hatch_pet_button.xml +++ b/Habitica/res/layout/dialog_hatch_pet_button.xml @@ -1,10 +1,12 @@ + android:gravity="center" + android:padding="6dp"> + android:layout_height="wrap_content" + app:fontFamily="sans-serif-medium"/> \ No newline at end of file diff --git a/Habitica/res/layout/dialog_pet_suggest_hatch.xml b/Habitica/res/layout/dialog_pet_suggest_hatch.xml index e07ce4887..d64694e68 100644 --- a/Habitica/res/layout/dialog_pet_suggest_hatch.xml +++ b/Habitica/res/layout/dialog_pet_suggest_hatch.xml @@ -52,12 +52,14 @@ android:id="@+id/shimmer_view" android:layout_width="wrap_content" android:layout_height="wrap_content" - app:shimmer_repeat_delay="8000"> + app:shimmer_repeat_delay="8000" + app:shimmer_base_color="@color/text_dimmed" + app:shimmer_highlight_color="@color/content_background" + app:shimmer_highlight_alpha="0.8"> diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/modules/UserModule.java b/Habitica/src/main/java/com/habitrpg/android/habitica/modules/UserModule.java index e6e231245..3de77ecbe 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/modules/UserModule.java +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/modules/UserModule.java @@ -3,6 +3,7 @@ package com.habitrpg.android.habitica.modules; import android.content.Context; import android.content.SharedPreferences; +import com.habitrpg.android.habitica.BuildConfig; import com.habitrpg.android.habitica.data.TaskRepository; import com.habitrpg.android.habitica.data.UserRepository; import com.habitrpg.android.habitica.helpers.TaskAlarmManager; @@ -28,7 +29,11 @@ public class UserModule { @Named(NAMED_USER_ID) @UserScope public String providesUserID(SharedPreferences sharedPreferences) { - return sharedPreferences.getString("UserID", ""); + if (BuildConfig.DEBUG && !BuildConfig.TEST_USER_ID.isEmpty()) { + return BuildConfig.TEST_USER_ID; + } else { + return sharedPreferences.getString("UserID", ""); + } } @Provides diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/BaseTasksRecyclerViewAdapter.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/BaseTasksRecyclerViewAdapter.kt index b32719226..981c9e5e0 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/BaseTasksRecyclerViewAdapter.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/BaseTasksRecyclerViewAdapter.kt @@ -8,11 +8,11 @@ import com.habitrpg.android.habitica.HabiticaBaseApplication import com.habitrpg.android.habitica.components.UserComponent import com.habitrpg.android.habitica.data.TaskRepository import com.habitrpg.android.habitica.models.tasks.Task -import com.habitrpg.common.habitica.models.tasks.TaskType import com.habitrpg.android.habitica.proxy.AnalyticsManager import com.habitrpg.android.habitica.ui.adapter.BaseRecyclerViewAdapter import com.habitrpg.android.habitica.ui.viewHolders.BindableViewHolder import com.habitrpg.android.habitica.ui.viewmodels.TasksViewModel +import com.habitrpg.common.habitica.models.tasks.TaskType import javax.inject.Inject abstract class BaseTasksRecyclerViewAdapter>( @@ -60,13 +60,13 @@ abstract class BaseTasksRecyclerViewAdapter>( if (taskType != task.type) return var i = 0 - while (i < this.content?.size ?: 0) { + while (i < (this.content?.size ?: 0)) { if (content?.get(i)?.id == task.id) { break } ++i } - if (i < content?.size ?: 0) { + if (i < (content?.size ?: 0)) { content?.set(i, task) } filter() diff --git a/common/src/main/java/com/habitrpg/common/habitica/api/HostConfig.kt b/common/src/main/java/com/habitrpg/common/habitica/api/HostConfig.kt index 6fe0952bf..246f86e58 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/api/HostConfig.kt +++ b/common/src/main/java/com/habitrpg/common/habitica/api/HostConfig.kt @@ -7,12 +7,6 @@ import androidx.core.content.edit import com.habitrpg.common.habitica.BuildConfig import com.habitrpg.common.habitica.helpers.KeyHelper -/** - * The configuration of the host

- * Currently, the Port isn't used at all. - * - * @author MagicMicky - */ class HostConfig { var address: String var port: String @@ -30,6 +24,11 @@ class HostConfig { this.port = BuildConfig.PORT if (BuildConfig.DEBUG) { this.address = BuildConfig.BASE_URL + if (BuildConfig.TEST_USER_ID.isNotBlank()) { + userID = BuildConfig.TEST_USER_ID + apiKey = BuildConfig.TEST_USER_KEY + return + } } else { val address = sharedPreferences.getString("server_url", null) if (address != null && address.isNotEmpty()) { @@ -39,7 +38,6 @@ class HostConfig { } } this.userID = sharedPreferences.getString(context.getString(com.habitrpg.common.habitica.R.string.SP_userID), null) ?: "" - this.apiKey = loadAPIKey(sharedPreferences, keyHelper) } diff --git a/version.properties b/version.properties index 2c9269b28..3ba3383af 100644 --- a/version.properties +++ b/version.properties @@ -1,2 +1,2 @@ NAME=4.0 -CODE=4180 \ No newline at end of file +CODE=4190 \ No newline at end of file diff --git a/wearos/build.gradle b/wearos/build.gradle index cfce73bd7..af5452bc0 100644 --- a/wearos/build.gradle +++ b/wearos/build.gradle @@ -18,6 +18,9 @@ android { versionCode app_version_code + 1 versionName app_version_name buildConfigField "String", "TESTING_LEVEL", "\"production\"" + + def formattedDate = new Date().format('yyMMdd') + archivesBaseName = "Habitica-WearOS-${formattedDate}${versionCode}" } signingConfigs { diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/data/repositories/UserLocalRepository.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/data/repositories/UserLocalRepository.kt index b353c9173..20c2dd4a5 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/data/repositories/UserLocalRepository.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/data/repositories/UserLocalRepository.kt @@ -3,13 +3,14 @@ package com.habitrpg.wearos.habitica.data.repositories import androidx.lifecycle.MutableLiveData import androidx.lifecycle.asFlow import com.habitrpg.wearos.habitica.models.user.User +import kotlinx.coroutines.flow.filterNotNull import javax.inject.Inject import javax.inject.Singleton @Singleton class UserLocalRepository @Inject constructor() { private val user = MutableLiveData() - fun getUser() = user.asFlow() + fun getUser() = user.asFlow().filterNotNull() fun saveUser(user: User) { this.user.value = user