diff --git a/app/src/main/java/org/oppia/android/app/testing/TestFontScaleConfigurationUtilActivity.kt b/app/src/main/java/org/oppia/android/app/testing/TestFontScaleConfigurationUtilActivity.kt index f36b7a6d2bf..cdbc01ee271 100644 --- a/app/src/main/java/org/oppia/android/app/testing/TestFontScaleConfigurationUtilActivity.kt +++ b/app/src/main/java/org/oppia/android/app/testing/TestFontScaleConfigurationUtilActivity.kt @@ -20,8 +20,7 @@ class TestFontScaleConfigurationUtilActivity : InjectableAutoLocalizedAppCompatA override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) (activityComponent as ActivityComponentImpl).inject(this) - @Suppress("DEPRECATION") // TODO(#5405): Ensure the correct type is being retrieved. - val readingTextSize = checkNotNull( + val readingTextSize = checkNotNull( intent.getProtoExtra( TEST_FONT_SCALE_CONFIGURATION_UTIL_ACTIVITY_PARAMS_KEY, TestFontScaleConfigurationUtilActivityParams.getDefaultInstance() diff --git a/third_party/maven_install.json b/third_party/maven_install.json index 007494b7a1b..55358a1db0b 100755 --- a/third_party/maven_install.json +++ b/third_party/maven_install.json @@ -1,12 +1,10 @@ { "__AUTOGENERATED_FILE_DO_NOT_MODIFY_THIS_FILE_MANUALLY": "THERE_IS_NO_DATA_ONLY_ZUUL", - "__INPUT_ARTIFACTS_HASH": 848297255, - "__RESOLVED_ARTIFACTS_HASH": 733469183, + "__INPUT_ARTIFACTS_HASH": -1738401753, + "__RESOLVED_ARTIFACTS_HASH": 223568274, "conflict_resolution": { "androidx.annotation:annotation:1.1.0": "androidx.annotation:annotation:1.2.0", "androidx.constraintlayout:constraintlayout:1.1.3": "androidx.constraintlayout:constraintlayout:2.0.1", - "androidx.core:core-ktx:1.0.1": "androidx.core:core-ktx:1.1.0", - "androidx.core:core:1.0.1": "androidx.core:core:1.7.0", "androidx.fragment:fragment:1.1.0": "androidx.fragment:fragment:1.3.6", "androidx.lifecycle:lifecycle-livedata-core:2.2.0": "androidx.lifecycle:lifecycle-livedata-core:2.3.1", "androidx.lifecycle:lifecycle-viewmodel-ktx:2.2.0": "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1", @@ -48,9 +46,9 @@ }, "androidx.annotation:annotation-experimental:aar": { "shasums": { - "jar": "0157de61a2064047896a058080f3fd67ba57ad9a94857b3f7a363660243e3f90" + "jar": "abfd29c8556e5bd0325a9f769ab9e9d154ff4a5515c476cdd5a2a8285b1b19dc" }, - "version": "1.1.0" + "version": "1.3.0" }, "androidx.appcompat:appcompat-resources:aar": { "shasums": { @@ -246,15 +244,15 @@ }, "androidx.core:core-ktx:aar": { "shasums": { - "jar": "070cc5f8864f449128a2f4b25ca5b67aa3adca3ee1bd611e2eaf1a18fad83178" + "jar": "1542a1df7be908c95fee91b8dbc03fd974f53f11d84a85d881f95a52551c4051" }, - "version": "1.1.0" + "version": "1.9.0" }, "androidx.core:core:aar": { "shasums": { - "jar": "aaf6734226fff923784f92f65d78a2984dbf17534138855c5ce2038f18656e0b" + "jar": "8bda3ee3a88887d54f6679fb6b6cd788629f73234ac91c8bbed924e721ec85b8" }, - "version": "1.7.0" + "version": "1.9.0" }, "androidx.cursoradapter:cursoradapter:aar": { "shasums": { @@ -1734,15 +1732,15 @@ }, "org.jetbrains.kotlin:kotlin-stdlib": { "shasums": { - "jar": "739c526672bb337573b28f63afa8306eb088b0c3a0967f56d6c89f4a3012a492" + "jar": "e771fe74250a943e8f6346713201ff1d8cb95c3a5d1a91a22b65a9e04f6a8901" }, - "version": "1.6.21" + "version": "1.7.10" }, "org.jetbrains.kotlin:kotlin-stdlib-common": { "shasums": { - "jar": "183bec59cd9f3a14957b190e8c879cf1194bd1f106b0a7b6e1cbb8790d242363" + "jar": "19f102efe9629f8eabc63853ad15c533e47c47f91fca09285c5bde86e59f91d4" }, - "version": "1.6.21" + "version": "1.7.10" }, "org.jetbrains.kotlin:kotlin-stdlib-jdk7": { "shasums": { @@ -2018,6 +2016,9 @@ "androidx.tracing:tracing:aar", "org.jetbrains.kotlin:kotlin-stdlib" ], + "androidx.annotation:annotation-experimental:aar": [ + "org.jetbrains.kotlin:kotlin-stdlib" + ], "androidx.appcompat:appcompat-resources:aar": [ "androidx.annotation:annotation", "androidx.collection:collection", diff --git a/third_party/versions.bzl b/third_party/versions.bzl index eb60332f5b6..2782a472200 100644 --- a/third_party/versions.bzl +++ b/third_party/versions.bzl @@ -31,8 +31,8 @@ MAVEN_PRODUCTION_DEPENDENCY_VERSIONS = { "androidx.compose.runtime:runtime-livedata": "1.1.1", "androidx.compose.ui:ui": "1.1.1", "androidx.constraintlayout:constraintlayout": "1.1.3", - "androidx.core:core": "1.0.1", - "androidx.core:core-ktx": "1.0.1", + "androidx.core:core": "1.9.0", + "androidx.core:core-ktx": "1.9.0", "androidx.databinding:databinding-adapters": "3.4.2", "androidx.databinding:databinding-common": "3.4.2", "androidx.databinding:databinding-compiler": "3.4.2", diff --git a/utility/src/main/java/org/oppia/android/util/extensions/BUILD.bazel b/utility/src/main/java/org/oppia/android/util/extensions/BUILD.bazel index ecadff636b1..3996cba474e 100644 --- a/utility/src/main/java/org/oppia/android/util/extensions/BUILD.bazel +++ b/utility/src/main/java/org/oppia/android/util/extensions/BUILD.bazel @@ -1,9 +1,7 @@ """ General purposes utilities to manage extensions """ - load("@io_bazel_rules_kotlin//kotlin:android.bzl", "kt_android_library") - kt_android_library( name = "bundle_extensions", srcs = [ @@ -11,10 +9,10 @@ kt_android_library( ], visibility = ["//:oppia_api_visibility"], deps = [ + "//third_party:androidx_core_core", "//third_party:com_google_protobuf_protobuf-javalite", ], ) - kt_android_library( name = "context_extensions", srcs = [ @@ -25,7 +23,6 @@ kt_android_library( "//third_party:com_google_protobuf_protobuf-javalite", ], ) - kt_android_library( name = "string_extensions", srcs = [ @@ -33,7 +30,6 @@ kt_android_library( ], visibility = ["//:oppia_api_visibility"], ) - kt_android_library( name = "iterable_extensions", srcs = [ diff --git a/utility/src/main/java/org/oppia/android/util/extensions/BundleExtensions.kt b/utility/src/main/java/org/oppia/android/util/extensions/BundleExtensions.kt index d2a955011b2..31f1106b41b 100644 --- a/utility/src/main/java/org/oppia/android/util/extensions/BundleExtensions.kt +++ b/utility/src/main/java/org/oppia/android/util/extensions/BundleExtensions.kt @@ -1,9 +1,8 @@ package org.oppia.android.util.extensions -import android.annotation.TargetApi import android.content.Intent -import android.os.Build import android.os.Bundle +import androidx.core.os.BundleCompat import com.google.protobuf.ByteString import com.google.protobuf.InvalidProtocolBufferException import com.google.protobuf.MessageLite @@ -72,17 +71,6 @@ fun Intent.getProtoExtra(name: String, defaultValue: T): T { */ fun Bundle.getStringFromBundle(key: String): String? = getString(key) -// TODO(#5405): Migrate this to BundleCompat. -private inline fun Bundle.getTypedSerializable(name: String): T? { - return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { - getSerializableAboveApi32(name, T::class.java) - } else getSerializableBelowApi33(name) -} - -@TargetApi(Build.VERSION_CODES.TIRAMISU) -private fun Bundle.getSerializableAboveApi32(name: String, type: Class): T? = - getSerializable(name, type) +private inline fun Bundle.getTypedSerializable(name: String): T? = + BundleCompat.getSerializable(this, name, T::class.java) -@Suppress("DEPRECATION") // This is needed for old devices. New devices use the new API per above. -private inline fun Bundle.getSerializableBelowApi33(name: String): T? = - getSerializable(name) as? T diff --git a/utility/src/test/java/org/oppia/android/util/extensions/BundleExtensionsTest.kt b/utility/src/test/java/org/oppia/android/util/extensions/BundleExtensionsTest.kt index 384ff2df1f2..92a64dd121e 100644 --- a/utility/src/test/java/org/oppia/android/util/extensions/BundleExtensionsTest.kt +++ b/utility/src/test/java/org/oppia/android/util/extensions/BundleExtensionsTest.kt @@ -195,7 +195,6 @@ class BundleExtensionsTest { assertThat(intent).extras().hasSize(1) assertThat(intent).extras().containsKey("first_extra") - // TODO(#5405): Convert this to getSerializableExtra once Robolectric can be updated. assertThat(intent.getStringExtra("first_extra")).isNull() }