diff --git a/packages/react-native/ReactAndroid/build.gradle.kts b/packages/react-native/ReactAndroid/build.gradle.kts index 16e2101973f..2b31c54fe0f 100644 --- a/packages/react-native/ReactAndroid/build.gradle.kts +++ b/packages/react-native/ReactAndroid/build.gradle.kts @@ -729,6 +729,7 @@ tasks.withType().configureEach { } dependencies { + api(libs.androidx.activity) api(libs.androidx.appcompat) api(libs.androidx.appcompat.resources) api(libs.androidx.autofill) diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/activityresult/ActivityResultLauncherCompat.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/activityresult/ActivityResultLauncherCompat.java deleted file mode 100644 index a326c035b92..00000000000 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/activityresult/ActivityResultLauncherCompat.java +++ /dev/null @@ -1,24 +0,0 @@ -/* - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -package com.facebook.react.activityresult; - -import androidx.activity.result.ActivityResultLauncher; -import androidx.activity.result.contract.ActivityResultContract; - -abstract class ActivityResultLauncherCompat extends ActivityResultLauncher { - private final ActivityResultContract contract; - - ActivityResultLauncherCompat(ActivityResultContract contract) { - this.contract = contract; - } - - @Override - public ActivityResultContract getContract() { - return contract; - } -} diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/activityresult/DeferredActivityResultLauncher.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/activityresult/DeferredActivityResultLauncher.kt index 7e62a3b46f7..7736faf6a39 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/activityresult/DeferredActivityResultLauncher.kt +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/activityresult/DeferredActivityResultLauncher.kt @@ -26,10 +26,10 @@ import com.facebook.react.common.ReactConstants */ internal class DeferredActivityResultLauncher( private val key: String, - contract: ActivityResultContract, + override val contract: ActivityResultContract, private val onUnregister: () -> Unit, private val onLaunchFailure: (RuntimeException) -> Unit = {}, -) : ActivityResultLauncherCompat(contract) { +) : ActivityResultLauncher() { private class PendingLaunch(val input: I, val options: ActivityOptionsCompat?) diff --git a/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/activityresult/ReactActivityResultCallerImplTest.kt b/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/activityresult/ReactActivityResultCallerImplTest.kt index b7af342fa58..5e601ebc2fa 100644 --- a/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/activityresult/ReactActivityResultCallerImplTest.kt +++ b/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/activityresult/ReactActivityResultCallerImplTest.kt @@ -81,14 +81,6 @@ class ReactActivityResultCallerImplTest { caller = ReactActivityResultCallerImpl(reactContext) } - @Test - fun launcherExposesRegisteredContract() { - val contract = GetContent() - val launcher = caller.registerForActivityResult(moduleA, contract) {} - - assertThat(launcher.contract).isSameAs(contract) - } - @Test fun twoOwnersMayRegisterTheSameStockContract() { caller.registerForActivityResult(moduleA, GetContent()) {} diff --git a/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/activityresult/ReactActivityResultCallerThreadingTest.kt b/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/activityresult/ReactActivityResultCallerThreadingTest.kt index 8d73eb753cd..78e58d6d3ce 100644 --- a/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/activityresult/ReactActivityResultCallerThreadingTest.kt +++ b/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/activityresult/ReactActivityResultCallerThreadingTest.kt @@ -11,6 +11,7 @@ import android.app.Activity import android.content.ActivityNotFoundException import android.os.Bundle import android.os.Looper +import androidx.activity.result.ActivityResultLauncher import androidx.activity.result.ActivityResultRegistry import androidx.activity.result.ActivityResultRegistryOwner import androidx.activity.result.contract.ActivityResultContract @@ -64,7 +65,8 @@ class ReactActivityResultCallerThreadingTest { .orEmpty() } - private class ThrowingLauncher : ActivityResultLauncherCompat(GetContent()) { + private class ThrowingLauncher : ActivityResultLauncher() { + override val contract: ActivityResultContract = GetContent() var launchCount = 0 override fun launch(input: String, options: ActivityOptionsCompat?) { diff --git a/packages/react-native/gradle/libs.versions.toml b/packages/react-native/gradle/libs.versions.toml index 71ea8f054a0..db03284c43f 100644 --- a/packages/react-native/gradle/libs.versions.toml +++ b/packages/react-native/gradle/libs.versions.toml @@ -7,6 +7,7 @@ buildTools = "37.0.0" ndkVersion = "27.1.12297006" # Dependencies versions agp = "9.2.1" +androidx-activity = "1.10.1" androidx-annotation = "1.6.0" androidx-appcompat = "1.7.0" androidx-autofill = "1.3.0" @@ -52,6 +53,7 @@ gflags="2.2.0" nlohmannjson="3.11.2" [libraries] +androidx-activity = { module = "androidx.activity:activity", version.ref = "androidx-activity" } androidx-annotation = { module = "androidx.annotation:annotation", version.ref = "androidx-annotation" } androidx-appcompat = { module = "androidx.appcompat:appcompat", version.ref = "androidx-appcompat" } androidx-appcompat-resources = { module = "androidx.appcompat:appcompat-resources", version.ref = "androidx-appcompat" }