Skip to content

Rebase ad-loader-ad onto latest googleads/googleads-mobile-flutter v8.0.0#3

Open
felipefuzaro-funda wants to merge 7 commits into
msbit:v8from
felipefuzaro-funda:rebase-v8
Open

Rebase ad-loader-ad onto latest googleads/googleads-mobile-flutter v8.0.0#3
felipefuzaro-funda wants to merge 7 commits into
msbit:v8from
felipefuzaro-funda:rebase-v8

Conversation

@felipefuzaro-funda

@felipefuzaro-funda felipefuzaro-funda commented May 19, 2026

Copy link
Copy Markdown

This PR rebases the ad-loader-ad branch onto the tag v8.0.0 from the official
googleads/googleads-mobile-flutter repository.

Summary of changes

  • Rebased ad-loader-ad onto the upstream tag v8.0.0
  • Resolved rebase conflicts to align the forked branch with recent upstream updates

Notes

No additional changes were introduced beyond the rebase itself.

Please review and let me know if you’d like any adjustments or a merge-based update instead.

This PR is intended as a rebased version of ad-loader-ad on top of v8.0.0, rather than a merge commit into the current ad-loader-ad branch.

The branch is clean locally after the rebase, but GitHub still reports conflicts because it is comparing it as a normal merge PR. Happy to prepare a merge-based version instead if that is easier to review/apply.

@felipefuzaro-funda felipefuzaro-funda marked this pull request as ready for review May 19, 2026 11:42
@msbit msbit changed the base branch from ad-loader-ad to v8 June 18, 2026 05:08
@msbit

msbit commented Jun 18, 2026

Copy link
Copy Markdown
Owner

Hey @felipefuzaro-funda, long time no see!

I've re-targeted this PR to a new branch, which is at the same ref as v8.0.0, to clean up the diff a lot.

Overall looks good; one thing we'll need to do here is apply the new(ish?) styling in the updated workflow. Something like:

git rebase --exec 'dart format packages/google_mobile_ads/' v8.0.0

adding the changes to each commit.

msbit added 7 commits June 18, 2026 15:54
In `FlutterNativeAdLoadedListener`, make the inner weak reference
be generic on the `OnNativeAdLoadedListener` interface instead of
the `FlutterNativeAd` concrete class. This allows using the same
listener class with any other type that conforms to
`OnNativeAdLoadedListener`.

Update `FlutterNativeAd` to conform to `OnNativeAdLoadedListener`
to allow delegating in the same existing fashion.
For the `onBanner*` and `onNative*` methods, relax the type constraint
from `FLTBannerAd` and `FLTNativeAd` respectively, to `id<FLTAd>` so any
instance that conforms to `FLTAd` can be used.
Create a new `GoogleMobileAdsPlugin` constructor which takes an additional
`Supplier<FlutterAdLoader>` argument. This is available solely for testing,
and allows the provision of a mock `FlutterAdLoader` for those `FlutterAd`s
that need it during their construction.
Add the `AdLoaderAd` component, without the specific configuration items
for each of the handled ad types. The component implementation is known
as:

  * `AdLoaderAd`  (Flutter)
  * `FlutterAdLoaderAd` (Android)
  * `FLTAdLoaderAd` (iOS)
Allow the `AdLoaderAd` instance to serve `Banner` ads, which are
instances of:

  * `AdManagerAdView` under Android, and
  * `GAMBannerView` under iOS
Allow the `AdLoaderAd` instance to serve `Custom` ads, which are
instances of:

  * `NativeCustomFormatAd` under Android, and
  * `GADCustomNativeAd` under iOS
Allow the `AdLoaderAd` instance to serve `Native` ads, which are
instances of:

  * `NativeAd` under Android, and
  * `GADNativeAd` under iOS
@felipefuzaro-funda

Copy link
Copy Markdown
Author

Hey @msbit, long time indeed, I hope you are doing well!

Thanks for checking it, I've rebased it with the format applied.

On a side note, the official package released a new version 9.0.0 in this meantime. I started looking into rebasing it as well but realised that it's not a mechanical rebase since they have a significant Android refactor (introducing next-gen sdk).

It would be great if the fork could support v9 as well. If you have plans to do it, let me know if I can help with it.

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.

2 participants