You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
How to use registerForActivityResult with TurboModules in react native's new architecture? #36377
The issue is I can't call my MainActivity in my Module as the Module file is not part of the main android folder but a separate folder called RTNImagePicker in my case
I get below error if I try to refer MainActivity in my module
I cannot add it as dependency on module as well as it results in circular dependency
React Native Version
0.71.0
Output of npx react-native info
error Unrecognized command "info".
info Run "react-native --help" to see a list of all available commands.
Steps to reproduce
You can download the sample from here and try it out
Snack, code example, screenshot, or link to a repository
You are on a supported minor version, but it looks like there's a newer patch available. Please upgrade to the highest patch for your minor or latest and verify if the issue persists (alternatively, create a new project and repro the issue in it). If it does not repro, please let us know so we can close out this issue. This helps us ensure we are looking at issues that still exist in the most recent releases.
Answering here as I haven't got the time to get back to it.
As per Android documentation, registerForActivityResult can be called only during the Activity/Fragment creation. So this will have to happen inside the MainActivity (you'll have to instruct your users to do an invocation of a class of your library like this:
You can then call registerForActivityResult inside your library code, and retain the ActivityResultLauncher that gets returned, and invoke it inside your module whenever needed.
Activity
github-actions commentedon Mar 5, 2023
BraveEvidence commentedon Mar 5, 2023
I already upgraded to 0.71.3 and still face the issue
github-actions commentedon Jan 31, 2024
This issue is stale because it has been open 180 days with no activity. Remove stale label or comment or this will be closed in 7 days.
cortinico commentedon Feb 7, 2024
Answering here as I haven't got the time to get back to it.
As per Android documentation,
registerForActivityResultcan be called only during the Activity/Fragment creation. So this will have to happen inside the MainActivity (you'll have to instruct your users to do an invocation of a class of your library like this:You can then call
registerForActivityResultinside your library code, and retain theActivityResultLauncherthat gets returned, and invoke it inside your module whenever needed.cortinico commentedon Feb 7, 2024
Also this is unchanged between old and new architecture
matinzd commentedon Aug 3, 2026
Let's see if this lands:
#57798