feat: new arch support for banner , full screen ads and mobilesdk module on android
Description
This PR migrates key Android components to React Native’s New Architecture (TurboModules/Fabric) and updates documentation to reflect the current migration status.
- Implemented native specs and refactored modules for New Architecture compatibility.
- Confirmed Banner Ads are using a Fabric Native Component via codegen.
- Migrated Mobile Ads SDK methods and Full Screen Ad modules (App Open, Interstitial, Rewarded, Rewarded Interstitial) to the New Architecture. fv
- Updated the Android rows in the README’s “Migrating to the New Architecture Status” table.
Related issues
- N/A
Release Summary
Android migration to New Architecture for core ads modules; documentation updated to reflect current status.
Checklist
- I read the Contributor Guide and followed the process outlined there for submitting PRs.
- [x] Yes
- My change supports the following platforms;
- [x]
Android - [ ]
iOS
- [x]
- My change includes tests;
- [ ]
e2etests added or updated in__tests__e2e__ - [ ]
jesttests added or updated in__tests__
- [ ]
- [x] I have updated TypeScript types that are affected by my change.
- This is a breaking change;
- [ ] Yes
- [x] No
Test Plan
- Verified that Android Banner component renders via Fabric using the codegen native component (
GoogleMobileAdsBannerViewNativeComponent) and manager (ReactNativeGoogleMobileAdsBannerAdViewManager). - Validated Full Screen Ads lifecycle under the new TurboModule implementations:
- App Open, Interstitial, Rewarded, Rewarded Interstitial load/show/dismiss flows.
- Ensured README status accurately reflects current migration state.
Think react-native-google-mobile-ads is great? Please consider supporting the project with any of the below:
- 👉 Star this repo on GitHub ⭐️
- 👉 Follow
Invertaseon Twitter
To view this pull requests documentation preview, visit the following URL:
docs.page/invertase/react-native-google-mobile-ads~819
Documentation is deployed and generated using docs.page.
Codecov Report
:white_check_mark: All modified and coverable lines are covered by tests.
:white_check_mark: Project coverage is 35.57%. Comparing base (a34c7ba) to head (055a5a7).
:warning: Report is 209 commits behind head on main.
Additional details and impacted files
@@ Coverage Diff @@
## main #819 +/- ##
==========================================
- Coverage 43.72% 35.57% -8.15%
==========================================
Files 30 36 +6
Lines 549 658 +109
Branches 151 167 +16
==========================================
- Hits 240 234 -6
- Misses 309 424 +115
:rocket: New features to boost your workflow:
- :snowflake: Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
- :package: JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.
Thank you for your contribution! Great to see someone working on new arch support for Android. Would be great if some more experienced Android developers can help test / review this @mikehardy @DoctorJohn @birdofpreyru @wjaykim
Hello 👋, this PR has been opened for more than 2 months with no activity on it.
If you think this is a mistake please comment and ping a maintainer to get this merged ASAP! Thanks for contributing!
You have 15 days until this gets closed automatically
Hello 👋, this PR has been opened for more than 2 months with no activity on it.
No way it has already been two months. I keep telling myself "I'll review this next weekend" :melting_face: