Skip to content

feat: new arch support for banner , full screen ads and mobilesdk module on android#819

Open
demon-sword wants to merge 5 commits intoinvertase:mainfrom
demon-sword:feat/new-arch-android
Open

feat: new arch support for banner , full screen ads and mobilesdk module on android#819
demon-sword wants to merge 5 commits intoinvertase:mainfrom
demon-sword:feat/new-arch-android

Conversation

@demon-sword
Copy link

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.
    • Yes
  • My change supports the following platforms;
    • Android
    • iOS
  • My change includes tests;
    • e2e tests added or updated in __tests__e2e__
    • jest tests added or updated in __tests__
  • I have updated TypeScript types that are affected by my change.
  • This is a breaking change;
    • Yes
    • 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 Invertase on Twitter

@docs-page
Copy link

docs-page bot commented Oct 31, 2025

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.

@demon-sword demon-sword marked this pull request as ready for review October 31, 2025 19:25
@dylancom dylancom requested a review from mikehardy October 31, 2025 20:03
@codecov
Copy link

codecov bot commented Nov 1, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 35.57%. Comparing base (a34c7ba) to head (055a5a7).
⚠️ 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     
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@dylancom
Copy link
Collaborator

dylancom commented Nov 1, 2025

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

@github-actions
Copy link

github-actions bot commented Dec 9, 2025

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

@github-actions github-actions bot added the stale label Dec 9, 2025
@DoctorJohn
Copy link
Contributor

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" 🫠

@github-actions github-actions bot removed the stale label Dec 9, 2025
@thejemish
Copy link

@DoctorJohn, please review this pr

@lklima
Copy link

lklima commented Jan 12, 2026

@DoctorJohn , please review this pr

@mikehardy
Copy link
Collaborator

This does still need a look, but please please 🙏 interested folks, do not post +1s or "please review" etc.

When you do that, you are requesting unpaid labor and being insistent about it. Please be self-aware and recognize that's rude.

Review it yourself, do the QA yourself and post the results. Otherwise please be patient while others perform unpaid labor for you, yes?

@mikehardy
Copy link
Collaborator

Or alternatively, sponsor the effort ;-). Always a positive way to go!

@github-actions
Copy link

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

@github-actions github-actions bot added the stale label Feb 25, 2026
@github-actions github-actions bot removed the stale label Mar 6, 2026
@danielduan
Copy link

danielduan commented Mar 10, 2026

Looks like this branch needs to be rebased.

Are there local dev instructions on how to run this locally? I've tried local publishing with yalc but the package doesn't seem to build with my existing apps that use Expo. Thanks!

edit: I just spent a couple hours trying set up my dev env and getting the Android + iOS example apps to build without any luck. I'm not sure this project is ready for a quick QA session by an outsider. It feels like Google/Admob should really be sponsoring this project.

@dylancom dylancom force-pushed the main branch 2 times, most recently from 759bc81 to 394fe44 Compare March 10, 2026 12:43
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.

7 participants