This guide shows you how to use the Google Mobile Ads SDK to load and display ads from Vungle using mediation, covering both bidding and waterfall integrations. It covers how to add Vungle to an ad unit's mediation configuration, and how to integrate the Vungle SDK and adapter into a Unity app.
Supported integrations and ad formats
Integration | |
---|---|
Bidding | 1 |
Waterfall | |
Formats | |
Banner | 2 |
Interstitial | |
Rewarded |
1 Bidding integration is in beta.
Banner ads are supported for waterfall mediation only. Bidding does not currently support banner ads.
Requirements
- Unity 4 or higher
- Latest Google Mobile Ads SDK [For bidding]: Google Mobile Ads mediation plugin for Vungle 3.8.2 or higher (latest version recommended)
- To deploy on Android
- Android API level 21 or higher
- To deploy on iOS
- iOS deployment target of 10.0 or higher
- [For bidding]: Vungle adapter 6.11.0.1 or higher (latest version recommended)
- A working Unity project configured with Google Mobile Ads SDK. See Get Started for details.
Limitations
- Vungle does not support loading multiple ads using the same Placement
Reference ID.
- The Vungle adapter gracefully fails the 2nd request if another request for that placement is loading or waiting to be shown.
- Vungle only supports loading 1 banner ad at a time.
- The Vungle adapter gracefully fails subsequent banner requests if a banner ad is already loaded.
Step 1: Set up Vungle
Sign up or log in to your Vungle account.
Add your app to the Vungle Applications dashboard by clicking the Add Application button.
Fill out the form, entering all the necessary details.
Android
iOS
Once your app is created, select your app from the Vungle Applications dashboard.
Android
iOS
Take note of the App ID.
Android
iOS
Add new placements
To create a new placement to be used with AdMob mediation, navigate to the Vungle Placements dashboard, click on the Add Placement button and select your app from the drop-down list.
Details for adding new placements are included below:
Banner
Select Banner, enter your desired Placement Name and fill out the rest of the form. [Waterfall only] Click the Continue button at the bottom of the page to create the placement.
300x250 Banner
Select MREC, enter your desired Placement Name and fill out the rest of the form. [Waterfall only] Click the Continue button at the bottom of the page to create the placement.
Interstitial
Select Interstitial, enter your desired Placement Name and fill out the rest of the form. [Waterfall only] Click the Continue button at the bottom of the page to create the placement.
Rewarded
Select Rewarded, enter your desired Placement Name and fill out the rest of the form. [Waterfall only] Click the Continue button at the bottom of the page to create the placement.
Specify how to monetize your inventory
Bidding
Under Monetization toggle the In-App Bidding switch to Enabled, then click the Continue button.
Waterfall
No additional steps required.
Take note of the Reference ID and click Sounds Good.
Banner
300x250 Banner
Interstitial
Rewarded
Locate your Reporting API Key
Bidding
This step isn't required for bidding integrations.
Waterfall
In addition to the App ID and the Reference ID, you'll also need your Vungle Reporting API Key to set up your AdMob ad unit ID. Navigate to the Vungle Reports dashboard and click on the Reporting API Key button to view your Reporting API Key.
Step 2: Configure your AdMob ad unit
You need to add Vungle to the mediation configuration for your AdMob ad units. First sign in to your AdMob account.
Navigate to the Mediation tab. If you have an existing mediation group you'd like to modify, click the name of that mediation group to edit it, and skip ahead to Add Vungle as an ad source.
To create a new mediation group, select Create Mediation Group.
Enter your ad format and platform, then click Continue.
Android
Give your mediation group a name, and select locations to target. Next, set the mediation group status to Enabled. Then click Add Ad Units.
Associate this mediation group with one or more of your existing AdMob ad units. Then click Done.
You should now see the ad units card populated with the ad units you selected, as shown below:
iOS
Give your mediation group a name, and select locations to target. Next, set the mediation group status to Enabled. Then click Add Ad Units.
Associate this mediation group with one or more of your existing AdMob ad units. Then click Done.
You should now see the ad units card populated with the ad units you selected, as shown below:
Add Vungle as an ad source
Bidding
Under the Bidding card in the Ad Sources section, select Add Ad Source. Then select Vungle.
Next, enter the Application ID, as well as the Placement Reference ID obtained in the previous section and click Done.
Finally, click Save.
Waterfall
In the Ad Sources card, select Add Ad Network. Select Vungle and enable the Optimize switch. For Reporting API Key, enter the Reporting API Key obtained in the previous section to set up ad source optimization for Vungle. Then enter an eCPM value for Vungle and click Continue.
Enter the Application ID and Placement Reference ID obtained in the previous section. If you're using version 4.x or older of the Vungle SDK, the Placement Reference ID can be left blank.
Android
iOS
Using rewarded ads
In the settings for your rewarded ad unit, check the Apply to all networks in Mediation groups box so that you provide the same reward to the user no matter which ad network is served.
If you don't override the reward, the Vungle adapter defaults to a reward of
type "vungle" with value 1
. The Vungle SDK does not provide specific reward
values for its rewarded ads.
For more information on setting reward values for AdMob ad units, see Create an ad unit.
Step 3: Import the Vungle SDK and adapter
Download the latest version of Google Mobile Ads mediation plugin for Vungle
from the download link in the Changelog
and extract the GoogleMobileAdsVungleMediation.unitypackage
from the zip file.
In your Unity project editor, select Assets > Import Package >
Custom Package and find the GoogleMobileAdsVungleMediation.unitypackage
file
you downloaded. Make sure all the files are selected and click Import.
Then, select Assets > Play Services Resolver > Android Resolver >
Force Resolve. The Unity Play Services Resolver library will perform
dependency resolution from scratch and copy the declared dependencies into the
Assets/Plugins/Android
directory of your Unity app.
Step 4: Additional code required
Vungle requires a list of all the placements that will be used within your app
to be passed to their SDK. You can provide the list of placements to the adapter
using the VungleInterstitialMediationExtras
and
VungleRewardedVideoMediationExtras
classes. The following code examples shows
how to use these classes.
Interstitial
VungleInterstitialMediationExtras extras = new VungleInterstitialMediationExtras(); #if UNITY_ANDROID extras.SetAllPlacements(new string[] { "ANDROID_PLACEMENT_1", "ANDROID_PLACEMENT_2" }); #elif UNITY_IPHONE extras.SetAllPlacements(new string[] { "IOS_PLACEMENT_1", "IOS_PLACEMENT_2" }); #endif AdRequest request = new AdRequest.Builder() .AddMediationExtras(extras) .Build();
Rewarded
VungleRewardedVideoMediationExtras extras = new VungleRewardedVideoMediationExtras(); #if UNITY_ANDROID extras.SetAllPlacements(new string[] { "ANDROID_PLACEMENT_1", "ANDROID_PLACEMENT_2" }); #elif UNITY_IPHONE extras.SetAllPlacements(new string[] { "IOS_PLACEMENT_1", "IOS_PLACEMENT_2" }); #endif AdRequest request = new AdRequest.Builder() .AddMediationExtras(extras) .Build();
Step 5: Test your implementation
To enable test ads, go to your Vungle dashboard and navigate to Applications.
Select your app for which you would like to enable test ads under the Placement Reference ID section of your app. Test ads can be enabled by selecting Test Mode to Show test ads only under the Status section.
Android
iOS
That's it! You now have a working mediation integration with Vungle.
Optional steps
EU Consent and GDPR
Under the Google EU User Consent Policy, you must ensure that certain disclosures are given to, and consents obtained from, users in the European Economic Area (EEA) regarding the use of device identifiers and personal data. This policy reflects the requirements of the EU ePrivacy Directive and the General Data Protection Regulation (GDPR). When seeking consent, you must identify each ad network in your mediation chain that may collect, receive, or use personal data and provide information about each network's use. Google currently is unable to pass the user's consent choice to such networks automatically.
The section below shows you how to enable or disable personalized ads for Vungle.
The Google Mobile Ads mediation plugin for Vungle version 3.0.0 includes the
Vungle.UpdateConsentStatus()
and Vungle.GetCurrentConsentStatus()
methods.
There are two possible values you can indicate when updating the consent status:
VungleConsent.ACCEPTED
VungleConsent.DENIED
The following sample code updates the consent status to
VungleConsent.ACCEPTED
. If you choose to call this method, it is recommended
that you do so prior to requesting ads via the Google Mobile Ads SDK.
using GoogleMobileAds.Api.Mediation.Vungle;
// ...
Vungle.UpdateConsentStatus(VungleConsent.ACCEPTED);
You can also check the current consent status for Vungle using the following code:
Vungle.GetCurrentConsentStatus();
In version 3.1.0 of the Google Mobile Ads mediation plugin for Vungle,
the UpdateConsentStatus()
method was updated to include a
consent message version:
using GoogleMobileAds.Api.Mediation.Vungle;
// ...
Vungle.UpdateConsentStatus(VungleConsent.ACCEPTED, "1.0.0");
You can get this consent message version for Vungle using the following code:
Vungle.GetCurrentConsentMessageVersion();
See Vungle's GDPR Questions and Answers article for more information.
Add Vungle to GDPR ad partners list
Follow the steps in GDPR settings to add Vungle to the GDPR ad partners list in the AdMob UI.
CCPA
The California Consumer Privacy Act (CCPA) requires giving California state residents the right to opt out of the "sale" of their "personal information" (as the law defines those terms), with the opt-out offered via a prominent "Do Not Sell My Personal Information" link on the "selling" party's homepage. The CCPA preparation guide offers the ability to enable restricted data processing for Google ad serving, but Google is unable to apply this setting to each ad network in your mediation chain. Therefore, you must identify each ad network in your mediation chain that may participate in the sale of personal information and follow guidance from each of those networks to ensure compliance with CCPA.
Add Vungle to CCPA ad partners list
Follow the steps in CCPA settings to add Vungle to the CCPA ad partners list in the AdMob UI.
Error codes
If the adapter fails to receive an ad from Vungle, publishers can check the
underlying error from the ad response using ResponseInfo
under the following classes:
iOS
Format | Class name |
---|---|
Banner | GADMAdapterVungleInterstitial |
Interstitial | GADMAdapterVungleInterstitial |
Rewarded | GADMAdapterVungleRewardBasedVideoAd |
Here are the codes and accompanying messages thrown by the Vungle adapter when an ad fails to load:
iOS
Error code | Reason |
---|---|
1-100 | Vungle SDK returned an error. See code for more details. |
101 | Vungle server parameters configured in the AdMob UI are missing/invalid. |
102 | An ad is already loaded for this network configuration. Vungle SDK cannot load a second ad for the same placement ID. |
103 | The requested ad size does not match a Vungle supported banner size. |
104 | Vungle SDK could not render the banner ad. |
105 | Vungle SDK only supports loading 1 banner ad at a time, regardless of placement ID. |
106 | Vungle SDK sent a callback saying the ad is not playable. |
Vungle Unity Mediation Plugin Changelog
Next Version
- Updated the
Vungle
class:- Added the
UpdateCCPAStatus(VungleCCPAStatus)
method. - Removed the
GetCurrentConsentStatus()
method. - Removed the
GetCurrentConsentMessageVersion()
method.
- Added the
Version 3.9.1
- Supports Vungle Android adapter version 6.12.1.0.
- Supports Vungle iOS adapter version 6.12.1.1.
- Built and tested with the Google Mobile Ads Unity Plugin version 7.4.0.
Version 3.9.0
- Supports Vungle Android adapter version 6.12.0.0.
- Supports Vungle iOS adapter version 6.12.0.0.
- Built and tested with the Google Mobile Ads Unity Plugin version 7.2.0.
Version 3.8.2
- Supports Vungle Android adapter version 6.11.0.2.
- Supports Vungle iOS adapter version 6.11.0.1.
- Built and tested with the Google Mobile Ads Unity Plugin version 7.1.0.
Version 3.8.1
- Supports Vungle Android adapter version 6.11.0.1.
- Supports Vungle iOS adapter version 6.11.0.0.
- Built and tested with the Google Mobile Ads Unity Plugin version 7.0.2.
Version 3.8.0
- Supports Vungle Android adapter version 6.11.0.0.
- Supports Vungle iOS adapter version 6.11.0.0.
- Built and tested with the Google Mobile Ads Unity Plugin version 7.0.0.
Version 3.7.5
- Supports Vungle Android adapter version 6.10.5.0.
- Supports Vungle iOS adapter version 6.10.6.1.
- Built and tested with the Google Mobile Ads Unity Plugin version 7.0.0.
Version 3.7.4
- Supports Vungle Android adapter version 6.10.4.0.
- Supports Vungle iOS adapter version 6.10.6.1.
- Built and tested with the Google Mobile Ads Unity Plugin version 7.0.0.
Version 3.7.3
- Supports Vungle Android adapter version 6.10.3.0.
- Supports Vungle iOS adapter version 6.10.5.1.
Version 3.7.2
- Supports Vungle Android adapter version 6.10.2.1.
- Supports Vungle iOS adapter version 6.10.5.1.
Version 3.7.1
- Supports Vungle Android adapter version 6.10.2.0.
- Supports Vungle iOS adapter version 6.10.4.0.
Version 3.7.0
- Supports Vungle Android adapter version 6.10.2.0.
- Supports Vungle iOS adapter version 6.10.3.0.
Version 3.6.0
- Supports Vungle Android adapter version 6.9.1.1.
- Supports Vungle iOS adapter version 6.9.2.0.
Version 3.5.1
- Supports Vungle Android adapter version 6.8.1.0.
- Supports Vungle iOS adapter version 6.8.1.0.
Version 3.5.0
- Supports Vungle Android adapter version 6.8.0.0.
- Supports Vungle iOS adapter version 6.8.0.0.
Version 3.4.1
- Supports Vungle Android adapter version 6.7.1.0.
- Supports Vungle iOS adapter version 6.7.1.0.
Version 3.4.0
- Supports Vungle Android adapter version 6.7.0.0.
- Supports Vungle iOS adapter version 6.7.0.0.
Version 3.3.1
- Repackaged
vungle-extras-library.jar
tovungle-unity-android-library.aar
, using a.aar
build to support Unity 2020.- When upgrading to this version, please remove
vungle-extras-library.jar
from your project.
- When upgrading to this version, please remove
- Supports Vungle Android adapter version 6.5.3.0.
- Supports Vungle iOS adapter version 6.5.3.0.
Version 3.3.0
- Supports Vungle Android adapter version 6.5.3.0.
- Supports Vungle iOS adapter version 6.5.3.0.
Version 3.2.0
- Supports Vungle Android adapter version 6.4.11.1.
- Supports Vungle iOS adapter version 6.4.6.0.
Version 3.1.4
- Supports Android adapter version 6.3.24.1.
- Supports iOS adapter version 6.3.2.3.
Version 3.1.3
- Supports Android adapter version 6.3.24.1.
- Supports iOS adapter version 6.3.2.2.
Version 3.1.2
- Updated the plugin to support the new open-beta Rewarded API.
- Supports Android adapter version 6.3.24.1.
- Supports iOS adapter version 6.3.2.1.
Version 3.1.1
- Supports Android adapter version 6.3.24.0.
- Supports iOS adapter version 6.3.2.0.
- Updated
Vungle.UpdateConsentStatus()
method to make theconsentMessageVersion
parameter optional. The value ofconsentMessageVersion
is now ignored for iOS. - Deprecated
Vungle.GetCurrentConsentMessageVersion()
for iOS.
Version 3.1.0
- Supports Android adapter version 6.3.17.0.
- Supports iOS adapter version 6.3.0.0.
- Updated
Vungle.UpdateConsentStatus()
method to take an additionalString
parameter for the publiser-provided consent message version. - Added
Vungle.GetCurrentConsentMessageVersion()
method to get the publisher-provided consent message version.
Version 3.0.1
- Supports Android adapter version 6.2.5.1.
- Supports iOS adapter version 6.2.0.3.
Version 3.0.0
- Supports Android adapter version 6.2.5.0.
- Supports iOS adapter version 6.2.0.2.
- Added the following methods:
Vungle.UpdateConsentStatus()
method to set the consent status that will be recorded in the Vungle SDK.Vungle.GetCurrentConsentStatus()
method to get the user's current consent status.
Version 2.0.0
- Supports Android adapter version 5.3.2.1.
- Supports iOS adapter version 6.2.0.0.
Version 1.1.0
- Supports Android adapter version 5.3.2.1.
- Supports iOS adapter version 5.4.0.0.
Version 1.0.0
- First release!
- Supports Android adapter version 5.3.0.0.
- Supports iOS adapter version 5.3.0.0.