Meson supports Unity version 2018.4.18f1 and above.
The download and use of the SDK are subject to the Meson SDK Licensing Terms. If you do not agree to these terms, do not download, access, or use the SDK, or the underlying services.
You can download the Meson Unity Package here.
In Unity, Go to Assets, go to Import Package and select Custom Package. Navigate to the downloaded Meson Unity Package. Select the package. The package contents will show on Unity. Select All and Import.
To edit 3rd Party Ad Network support, edit MesonDependencies.xml
To access MesonDependencies.xml, Go to Assets > Meson > Scripts > Editor > MesonDependencies.xml
<dependencies>
//Mandatory Dependencies
<androidPackages>
<androidPackage spec="ai.meson.sdk:meson:1.0.0-beta18"/>
<androidPackage spec="org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.4.10"/>
<androidPackage spec="org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.9"/>
<androidPackage spec="org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.9"/>
</androidPackages>
//iOS Ad Networks
<iosPods>
<iosPod name="MesonSDK" version="1.0.0-beta7"/>
<iosPod name="InMobiSDK" version="10.0.7"/>
<iosPod name="MesonInMobiAdapter" version="10.0.7.0-beta7"/>
<iosPod name="Google-Mobile-Ads-SDK" version="9.6.0"/>
<iosPod name="MesonGAMAdapter" version="9.6.0.0-beta7"/>
<iosPod name="MesonAdmobAdapter" version="9.6.0.0-beta7"/>
<iosPod name="IronSourceSDK" version="7.2.2.1"/>
<iosPod name="MesonIronSourceAdapter" version="7.2.2.1-beta7"/>
<iosPod name="AppLovinSDK" version="11.4.2"/>
<iosPod name="MesonApplovinAdapter" version="11.4.2.1-beta7"/>
<iosPod name="UnityAds" version="4.2.1"/>
<iosPod name="MesonUnityAdapter" version="4.2.1.0-beta7"/>
<iosPod name="MintegralAdSDK" version="7.1.7"/>
<iosPod name="MesonMintegralAdapter" version="7.1.7.0-beta7"/>
<iosPod name="VungleSDK-iOS" version="6.11.0"/>
<iosPod name="MesonVungleAdapter" version="6.11.0.0-beta7"/>
<iosPod name="FBAudienceNetwork" version="6.9.0"/>
<iosPod name="MesonFANAdapter" version="6.9.0.0-beta7"/>
</iosPods>
// Android Ad Networks
<!-- InMobi -->
<androidPackage spec="com.inmobi.monetization:inmobi-ads:10.0.7"/>
<androidPackage spec="ai.meson.sdk.mediation:inmobi:10.0.7.0-beta2"/>
<!-- Google AdMob -->
<androidPackage spec="com.google.android.gms:play-services-ads:21.0.0"/>
<androidPackage spec="ai.meson.sdk.mediation:admob:21.0.0.0-beta3"/>
<!-- Google Ad Manager -->
<androidPackage spec="com.google.android.gms:play-services-ads:21.0.0"/>
<androidPackage spec="ai.meson.sdk.mediation:gam:21.0.0.0-beta3"/>
<!-- Facebook Audience Network -->
<androidPackage spec="com.facebook.android:audience-network-sdk:6.7.0"/>
<androidPackage spec="ai.meson.sdk.mediation:facebook:6.11.0.0-beta2"/>
<!-- Vungle -->
<androidPackage spec="com.vungle:publisher-sdk-android:6.11.0"/>
<androidPackage spec="ai.meson.sdk.mediation:vungle:6.11.0.0-beta2"/>
<!-- Mintegral -->
<androidPackage spec="com.mbridge.msdk.oversea:mbbid:16.1.41"/>
<androidPackage spec="ai.meson.sdk.mediation:mintegral:16.1.41.0-beta4"/>
<androidPackage spec="com.mbridge.msdk.oversea:reward:16.1.41"/>
<androidPackage spec="com.mbridge.msdk.oversea:interstitialvideo:16.1.41"/>
<androidPackage spec="com.mbridge.msdk.oversea:mbbanner:16.1.41"/>
<androidPackage spec="com.mbridge.msdk.oversea:interstitial:16.1.41"/>
<!-- Unity -->
<androidPackage spec="com.unity3d.ads:unity-ads:4.2.1"/>
<androidPackage spec="ai.meson.sdk.mediation:unity:4.2.1.0-beta3"/>
<!-- App Lovin -->
<androidPackage spec="com.applovin:applovin-sdk:11.4.3"/>
<androidPackage spec="ai.meson.sdk.mediation:applovin:11.4.3.0-beta2"/>
</dependencies>
Option | Description |
---|---|
Auto Initialise on Start | Check this option to automatically initialize the Meson SDK in Start (). The SDK must be initialized before you can request ads. Leaving it unchecked means you must manually initialize the SDK. |
iOS App ID | Unique Identifier for an iOS app generated on Meson UI while creating a new app |
Android App ID | Unique Identifier for an Android app generated on Meson UI while creating a new app |
Log level | Specify log verbosity (‘none’, ‘error’, or ‘debug’) for the Meson SDK. |
GDPR Consent | GDPR consent can be passed either as an IAB v1 or v2 string, boolean value. |
Callback | Subscribe to initialization callback to listen to for initialization event completion lifecycle. |
Start()
method, instantiate a Meson.SdkConfiguration object with i. iOS App ID - Unique Identifier for an iOS app generated on Meson UI while creating a new app ii. Android App ID - Unique Identifier for an Android app generated on Meson UI while creating a new app iii. Log level - Specify log verbosity (‘none’, ‘error’ or ‘debug’) for the Meson SDK. iv. Consent (optional) - GDPR consent can be passed either as an IAB v1 or v2 string, boolean value.
Dictionary<string, string> consentDictionary = new Dictionary<string, string>();
consentDictionary.Add(Meson.MESON_GDPR_CONSENT_AVAILABLE, "true");
consentDictionary.Add(Meson.MESON_GDPR_CONSENT_GDPR_APPLIES, "0");
consentDictionary.Add(Meson.MESON_GDPR_CONSENT_IAB, "IAB String v1 or v2");
Meson.InitializeSdk(new Meson.SdkConfiguration
{
AndroidAppId = "12345",
IOSAppId = "1234",
LogLevel = Meson.LogLevel.Debug,
ConsentDict = consentDictionary
});
onSDKInitializedEvent
a callback event.
// register for initialized callback event in the app
MesonManager.SdkInitializedEvent += OnSdkInitializedEvent;
// create your handler
private void OnSdkInitializedEvent(string adUnitId)
{
// The SDK is initialized here. Ready to make ad requests.
}
This is optional. In case you want to send us any information about the user, please do as follows:
Dictionary<string, dynamic> extrasDictionary = new Dictionary<string, dynamic>();
extrasDictionary.Add("gender", 1);
extrasDictionary.Add("age", 18);
string[] segments = { "s1", "s2", "s3" };
extrasDictionary.Add("segments", segments);
Meson.SetExtras(extrasDictionary);
If you are using ProGuard, you must add the following code to your ProGuard file:
-keep class ai.meson.** {*;}
-keep interface ai.meson.** {*;}
-keepclassmembers class ai.meson.** { public *; }