Rebase ad-loader-ad onto latest googleads/googleads-mobile-flutter v8.0.0#3
Rebase ad-loader-ad onto latest googleads/googleads-mobile-flutter v8.0.0#3felipefuzaro-funda wants to merge 7 commits into
ad-loader-ad onto latest googleads/googleads-mobile-flutter v8.0.0#3Conversation
|
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: adding the changes to each commit. |
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
79f8657 to
19c9131
Compare
|
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. |
This PR rebases the
ad-loader-adbranch onto the tagv8.0.0from the officialgoogleads/googleads-mobile-flutterrepository.Summary of changes
ad-loader-adonto the upstream tagv8.0.0Notes
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-adon top ofv8.0.0, rather than a merge commit into the currentad-loader-adbranch.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.