React Native

React Native: Android Modernization and Legacy Architecture Cleanup

React Native's June 5th activity centers on two major themes: converting Android components from Java to Kotlin with improved code quality, and systematically removing legacy architecture APIs ahead of the new architecture transition.

Duration: PT2M24S

https://podlog.io/listen/react-native-b1306806/episode/react-native-android-modernization-and-legacy-architecture-cleanup-4ac13490

Transcript

Good morning, this is your React Native developer briefing for June 5th, 2026.

Today's activity reveals a significant modernization push across two fronts: Android component migration to Kotlin and aggressive legacy architecture cleanup.

The most substantial theme is the conversion of core Android scroll components from Java to Kotlin. Pull requests 57045 and a related commit converted ReactHorizontalScrollView and ReactScrollView to idiomatic Kotlin, while PR 57076 replaced double-bang null assertion operators across the Android codebase with safer Kotlin alternatives like checkNotNull and safe call operators. This isn't just a language migration - it's improving type safety and code maintainability across the entire Android surface. The conversion preserves public APIs while adding synthetic constructors, so existing code continues working unchanged.

Simultaneously, there's an aggressive cleanup of legacy architecture APIs. PR 57067 removed RCTBridge methods from the ReactNativeFactory protocol, while another commit removed deprecated legacy architecture protocol APIs entirely. PR 57071 gates legacy view manager interop behind a new compile flag, allowing apps that have fully migrated to Fabric to eliminate the Paper interop layer through dead code elimination. PRs 57081 and 57082 formally deprecated the Timing native module and TurboModule enablement functions, signaling their removal in future releases.

Several targeted fixes also landed: PR 57084 resolved stale text measurements after display density changes, PR 57087 fixed text decoration color fallback for styled spans, and a significant commit added proper skewX and skewY transform support on Android Q and above, finally closing a six-year-old rendering gap.

What's next: If you're maintaining Android components, expect continued Java-to-Kotlin migrations. More importantly, audit your usage of deprecated timing modules and legacy architecture APIs - the deprecation notices indicate removal is coming soon.

That's your React Native update for June 5th.