Awesome
MauiMTAdmob
Package name: Plugin.MauiMTAdmob
Latest version: 1.6.4
Nuget link: https://www.nuget.org/packages/Plugin.MauiMTAdmob/
Guide: https://hightouchinnovation.com/MMTAdmobGuide
To buy the license visit https://hightouchinnovation.com/MMTAdmob
The licensed version unlocks the mandatory Consent required by Google since the 16th of January. If you like, you can use the unlicensed version of the plugin and implement your choice of Certified CMP. The license will help me to continue updating and supporting this plugin adding all the newer features that Google implements.
App Open Ads and Native Ads are available only in the licensed version The licensed version allows to preload multiple ads and show them when you prefer
If you are looking for the Xamarin version of this plugin, you can visit: MTAdmob
Current Status (Version 1.5.1)
Android | iOS | Windows | Mac | |
---|---|---|---|---|
Banner | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: |
Collapsible Banner | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: |
Interstitial | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: |
Rewarded | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: |
Rewarded Interstitial | :heavy_check_mark: | :x:* | :x: | :x: |
App Open Ads | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: |
Native Ads | :heavy_check_mark: | :x:** | :x: | :x: |
*They are implemented but currently, they are not working. Probably something in the Admob SDK. I'm investigating it.
** I'm planning to add them in one of the next version, as soon as I fix some issues with the iOS SDK.
Methods
Consent | Banner | Interstitial | Rewarded | Rewarded Interstitial | App Open Ads |
---|---|---|---|---|---|
InitialiseAndShowConsentForm | LoadAd | LoadInterstitial | LoadRewarded | LoadRewardedInterstitial | - |
ShowInterstitial | ShowRewarded | ShowRewardedInterstitial | |||
IsInterstitialLoaded | IsRewardedLoaded | IsRewardedInterstitialLoaded |
Events
Banner | Interstitial | Rewarded | Rewarded Interstitial | App Open Ads | Native Ads |
---|---|---|---|---|---|
AdsLoaded | OnInterstitialLoaded | OnRewardedLoaded | OnRewardedLoaded | OnAppOpenAdLoaded | OnNativeAdLoaded |
AdsFailedToLoad | OnInterstitialFailedToLoad | OnRewardedFailedToLoad | OnRewardedFailedToLoad | OnAppOpenFailedToLoad | OnNativeFailedToLoad |
AdsImpression | OnInterstitialImpression | OnRewardedImpression | OnRewardedImpression | OnAppOpenImpression** | OnNativeImpression** |
AdsClicked | OnInterstitialOpened | OnRewardedOpened | OnRewardedOpened | OnAppOpenOpened** | OnNativeOpened** |
AdsOpened | OnInterstitialFailedToShow | OnRewardedFailedToShow | OnRewardedFailedToShow | OnAppOpenFailedToShow** | OnNativeFailedToShow** |
AdsClosed | OnInterstitialClosed | OnRewardedClosed | OnRewardedClosed | OnAppOpenClosed** | OnNativeClosed** |
AdsSwiped | OnInterstitialClicked* | OnRewardedClicked* | OnRewardedClicked* | OnAppOpenClicked** | OnNativeClicked** |
OnUserEarnedReward | OnUserEarnedReward |
*Only supported on iOS
**Currently only working on Android. I plan to add them on iOS in the next version
Important for iOS
As the package Xamarin.Google.Mobile.iOS.MobileAds doesn't work on Windows, you need a MAC to test this library. If you connect your iOS device directly to Windows and run it, the library will not work. Unfortunately, this issue doesn't depend on this library so I cannot solve this.
If you get an error saying that the compiler cannot find the Init method, just update your MAUI workload to the latest version. After that, everything will work correctly.
FOR MAC USERS WITH Mx PROCESSORS
If you compile the app on a Mac with Mx processors, you could get an error about architecture, to fix it, add to your csproj file these lines:
<PropertyGroup Condition="$(TargetFramework.Contains('-ios'))">
<RuntimeIdentifier>iossimulator-x64</RuntimeIdentifier>
</PropertyGroup>
<PropertyGroup>
<ForceSimulatorX64ArchitectureInIDE>true</ForceSimulatorX64ArchitectureInIDE>
</PropertyGroup>