UnityAds Mediation Integration Guide
This guide will instruct you step-by-step on how to set UnityAds live as an Ad Network on Unity LevelPlay.
- UnityAds Supports Android Operating Systems Version 4.4 (API level 19) and up.
Step 1. Create a UnityAds Account
- Create an account with UnityAds. You can do so here.
- Once your account has been verified you can log in at their partner login here.
Step 2. Create an Application and Placement in UnityAds
Follow these steps to create your UnityAds application:
- Create Application
- Once you login, navigate to the Developer Dashboard and select the Operate tab:
- Then add a new project:
- Name your new project and enter the store IDs you wish to publish on (Apple App Store or Google Play). If the game hasn’t been published yet you can always add the IDs later.
Note: You will need a unique UnityAds application per platform (iOS + Android) just like you do with your ironSource account.
- Once you login, navigate to the Developer Dashboard and select the Operate tab:
- Create Placement
UnityAds creates two default placements: one for Video (Interstitial on the ironSource Dashboard) and on for Rewarded Video. To view your placements or create new placements, including Banner, to run with Unity LevelPlay:- From Operate tab of the Developer Dashboard, select your Project:
- Select Platforms from the left navigation bar to view a list of your Project’s active platforms:
- Then, select the platform you want to create Placements for:
- Click on ‘ADD NEW PLACEMENT’
- The below window will appear and you must fill in the following info:
- Check Rewarded video to make the ads displayed through this Placement unskippable.
- Select the ad Type to display through this Placement (currently, Video is the only option).
- Name the Placement. The Placement ID, which you call in your code implementation, automatically populates based on your entry.
- Check mute audio if you want the ad to default to muted audio.
- If you did not check Rewarded video, you can specify the number of seconds to Allow skip after for ads displayed through this Placement.
- After clicking ‘Save‘, you should see your manually added placement under your default placements:
Step 3. Activate UnityAds on ironSource Network SDK Setup
Immediately after you confirm your application, you will be redirected to a summary page open to the ‘Monetization Settings’ tab. There you will find 3 pieces of Data from your UnityAds account which need to be input into your ironSource Network Setup Module in order for UnityAds to work correctly in connection with Unity LevelPlay:
Game ID This is the unique identifier of your Application in UnityAd’s system. Placement ID This is the unique identifier of your Ad Placement in UnityAd’s system. Two Ad Placements are created by default for your application; a Rewarded and Non-Rewarded placement.API Key This is a unique identifier for your UnityAds account, which allows Unity LevelPlay to import performance data from your UnityAds account to use in reporting & optimization.Organization core ID This is a unique identifier for your UnityAds account, which allows Unity LevelPlay to import performance data from your UnityAds account to use in reporting & optimization. Once you obtain this information, you must configure UnityAds Parameters in your ironSource Account. By adding the above information correctly, you will be able to take full advantage of UnityAds’ ad inventory and reporting data on Unity LevelPlay.
- From Operate tab of the Developer Dashboard, select your Project:
- Game ID
Go to Operate tab and select your Project, then select Platforms from the left navigation bar. You will then see a list of all added apps in that project as well as their respective Game IDs:
- Placement ID
Go to Operate tab and select your Project, then select Platforms from the left navigation bar. Choose the platform you want to see placements for:
Select the relevant application from the available list and under the ‘Ad Placements‘ tab you will see the placement IDs for all your placements. Choose the ID of the default ad type (Rewarded video, video or one of the placements you created)
- API Key
Navigate to the main Operate section and click on API Access. You will then see your API Key.
- Organization core ID
Navigate to the main Operate section and click on Settings. You will then see your Organization core ID:
Configure UnityAds’s Parameters into ironSource Account
Once you have all of these parameters, log in to your ironSource account.
-
Go to ‘Monetize‘ ➣ ‘SDK Networks‘ ➣ ‘Available Networks‘.
- Select UnityAds from the list of available Ad Networks and input the UnityAds ‘API Key‘ and Organizational ID in the relevant fields.
- Make sure you choose the app you want to integrate from the apps list on the left side of the SDK networks page.
- Click on the unity ads’ Setup button and enter the ‘Game ID‘ and ‘Placement ID‘ under the relevant Ad Unit Settings:
- You will then see UnityAds as Active for Mediation on your Setup Dashboard.
- New! Verify your integration with the Reporting API; this column will check your integration through the Reporting API and return three possible responses: Verified, Failed and No Response. Double check your integration and the information you entered above; then click ‘Retry‘ until you see ‘Verified’.
Step 4. Add the UnityAds Adapter to Your Build
Unity Integration Manager (Recommended)
Once you’ve completed SDK integration, you can download UnityAds Adapter, using the Unity Integration Manager.
In your Unity Development platform, go to ironSource > Integration Manager.
If you already have the latest version of the adapters, the action button will be changed to “Updated”, and will be disabled.
Android (Manual Resolve)
To apply your changes, make sure you use the “Resolve” process. This will download all relevant artifacts, according to your choices. For detailed information see instructions here.
For Proguard Users Only (Android)
If you are using ProGuard with the UnityAds adapter, you must add the following code to your ProGuard configuration:
# Keep filenames and line numbers for stack traces -keepattributes SourceFile,LineNumberTable # Keep JavascriptInterface for WebView bridge -keepattributes JavascriptInterface # Sometimes keepattributes is not enough to keep annotations -keep class android.webkit.JavascriptInterface { *; } # Keep all classes in Unity Ads package -keep class com.unity3d.ads.** { *; } # Keep all classes in Unity Services package -keep class com.unity3d.services.** { *; } -dontwarn com.google.ar.core.** -dontwarn com.unity3d.services.** -dontwarn com.ironsource.adapters.unityads.**
iOS Update Property List file (Info.plist)
UnityAds SDK 3.4.8+ requires to include UnityAds ad network ID in your app property list file (Info.plist).
Learn more about UnityAds SKAdNetwork Ids documentation here.
Android Plugin Manual Integration
- Download the UnityAds Adapter:
Download adapter from here.
- Add the UnityAds files to your Unity project:
Import the file into Assets/Plugins/Android/.
To accommodate changes in Unity version 5.5, the ironSource Plugin version 6.7.1 requires Android Manifests to be added separately for the Plugin and mediation adapter. If you are updating your plugin or currently running on 6.7.1, make sure to add the manifest activities noted in the Android documentation.
iOS Plugin Manual Integration
- Download the UnityAds iOS adapter and SDK:
Download the adapter from here.
- Add the UnityAds files to your Unity project:
After unzip the files, Import the adapter and SDK files into Assets/Plugins/iOS.
Our Unity Plugin adds the necessary frameworks automatically to your Xcode project.
Step 5. UnityAds Additional Settings
User-level COPPA
Unity LevelPlay lets publishers communicate UnityAds User-level COPPA settings directly to the UnityAds network. This feature is enabled using ironSource SDK 7.1.12+, UnityAds Adapter 4.3.15+.
Use the following syntax, to set UnityAds user.nonBehavioral flag with the parameter True:
IronSource.Agent.setMetaData("UnityAds_coppa","true");
Use the following syntax, to set UnityAds user.nonBehavioral flag with the parameter False:
IronSource.Agent.setMetaData("UnityAds_coppa","false");
Evaluate Your Ad Network Integration
- Verify your ad network integration with our Integration Helper. The ironSource SDK provides a tool to ensure you’ve successfully integrated our SDK as well as any additional network adapters.
- Manage the debug logs for your integrated mediation ad networks with this boolean:
IronSource.Agent.setAdaptersDebug(true);
When set to TRUE, this line of code will enable debug logs to help you troubleshoot issues with all of the mediation ad networks that permit to do so. Remove this code before your app goes live with our ad units! Supported for SDK versions 6.5.2 and up.
Done!
You are now all set to deliver UnityAds Ads within your application!
What’s Next?
To leverage additional ad networks through ironSource Mediation, integrate the adapters and follow our integration guides