- Prerequisites
- Installation
- Integration
- Defining a Custom Event
- Ad resizing
- Mediation settings
- Check list
Prerequisites
- Import the Teads inApp SDK in your project.
- Mopub SDK: 5.17.0+
Installation
Before installing the Teads MoPub adapter, you will need to integrate MoPub SDK into your application.
Gradle
project/build.gradle
allprojects {
repositories {
...
maven { url "https://teads.jfrog.io/artifactory/SDKAndroid-maven-prod" }
}
}
app/build.gradle
dependencies {
...
implementation ("com.mopub:mopub-sdk:5.17.0@aar") { // or higher
transitive = true
}
// Teads inApp SDK
implementation("tv.teads.sdk.android:sdk:5.x.x@aar") {
transitive = true
}
// Teads Mopub Adapter
implementation 'tv.teads.sdk.android:mopubadapter:5.x.x'
}
Integration
Important
MoPubView will automatically refresh your ad unit at a time interval that you set using the MoPub web interface.
You need to disable automatic refreshing content
mopubView.setAutorefreshEnabled(false)
Defining a Custom Event
In order to display a Teads ad using MoPub, you need to create a custom event.
Name | Value |
---|---|
Custom Event Class | tv.teads.adapter.mopub.TesdsBannerAd |
Custom Event Class Data | {"PID": "#PID#"} |
Please retrieve your production PID from your local account manager.
See this page for test PIDs and creative formats.
Important
Don't forget to replace the #PID# with your Teads placement ID.
Ad Resizing
The code below must be implemented to enable the resizing of the mediated ad slot making possible the rendering of square and vertical creatives.
Initialize the TeadsHelper
first.
TeadsHelper.initialize()
You can instantiate a new listener as below, the listener needs to be a class member field or strong referenced somewhere,
we keep internally a weak reference to it, so it goes garbage collected when you don't need it anymore:
listener = object : TeadsAdapterListener {
override fun onRatioUpdated(adRatio: AdRatio) {
val params: ViewGroup.LayoutParams = adView.layoutParams
// Here the width is MATCH_PARENT
params.height = adRatio.calculateHeight(adView.measuredWidth)
adView.layoutParams = params
}
override fun adOpportunityTrackerView(trackerView: AdOpportunityTrackerView) {
}
}
Use the helper to attach a listener, it will return you an UNIQUE key to reference the current listener attached.
val key = TeadsHelper.attachListener(listener)
Finally, add it to your current ad settings for the specific ad request
val settings = TeadsMediationSettings.Builder()
.addAdapterListener(key)
.build()
mopubView.setLocalExtras(mapOf("teads" to settings.toJsonEncoded()))
Mediation settings
Find the full settings list here
Check list
- ✅ Ensure Brand Safety is enabled
- ✅ Ensure you comply with privacy legal requirements (GDPR/CCPA).
- ✅ Comply with app-ads.txt
- ✅ Enable ad view resizing
- ✅ Test different test PIDs for multiple ad format and size testing
- ✅ Enable Validation mode to ensure key features are working