postMessage is the standard approach for sending data from React Native to WebView especially for passing user data. injectJavaScript directly executes code in the WebView context, which is useful for DOM manipulation or calling functions but less useful for just passing data. Your current setup with postMessage and event listeners is the right pattern for this use case