Skip to content

Comments

fix(Android): improve legacy RN runtime compatibility#119

Merged
floydkim merged 8 commits intomasterfrom
more-e2e-tests
Feb 20, 2026
Merged

fix(Android): improve legacy RN runtime compatibility#119
floydkim merged 8 commits intomasterfrom
more-e2e-tests

Conversation

@floydkim
Copy link
Collaborator

Summary

This PR improves Android runtime compatibility for React Native legacy versions while expanding RN CLI example coverage for matrix testing.

Key Changes

  • Added RN CLI example apps for versions 0.74.7 through 0.84.0 under Examples/.
  • Improved setup script resilience across RN template variants (especially iOS project patch differences).
  • Added automatic new architecture disabling for RN < 0.77 in setup flow.
  • Replaced release-history retrieval from axios to fetch in the example template.

Runtime-impacting Change (Important)

  • Commit: e4a37e75f8296439915a3157980b4086bc75d76d
  • Scope: Android library runtime path for bundle switching/restart.
  • CodePushNativeModule reflection logic now supports legacy RN field/method variations by:
    • Searching class hierarchy (including superclasses) instead of only the concrete class.
    • Resolving ReactHost through Activity.getReactHost() reflection for broader version compatibility.
  • Added Proguard keep rules so reflection targets are preserved in release builds.

@floydkim floydkim merged commit d8fe076 into master Feb 20, 2026
2 checks passed
@floydkim floydkim deleted the more-e2e-tests branch February 20, 2026 16:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant