Tapdaq requires Android API 14 or higher, the following networks require higher minimum:
Network | Minimum API Level |
---|---|
AdMob | 16 |
AppLovin | 16 |
Chartboost | 21 |
InMobi | 16 |
IronSource | 16 |
Maio | 16 |
UnityAds | 19 |
Add the Tapdaq-BaseSDK_[VERSION].jar or Tapdaq-BaseSDK_[VERSION].aar to your project, usually your libs folder.
Add GSON library. Recommended version 2.8.2 or higher. Download
If using play services 15.0.0 or higher, add the Play-Services-Identity library. Download
If using play services lower than 15.0.0, add the Play-Services-Basement library. Download
Add support v4 24.0.0 or higher. Download
Add the Android Lifecycle Extension 1.0.0 or higher and its dependencies. Download
Allow the following permissions and activities in your AndroidManifest.xml file, like so:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.company.name">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application>
<!-- Debug Views -->
<activity android:name="com.tapdaq.sdk.TMTestActivity" android:configChanges="orientation|screenSize" />
</application>
</manifest>
Download Tapdaq Base SDK and the adapters required, from each zip, add the .jar or .aar Adapter file as well as the ad network libraries to your project.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.tapdaq.sample">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_CALENDAR" />
<uses-permission android:name="android.permission.WRITE_CALENDAR" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="18" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
}
<application>
<activity android:name="com.adcolony.sdk.AdColonyInterstitialActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:hardwareAccelerated="true"/>
<activity
android:name="com.applovin.adview.AppLovinInterstitialActivity"
android:configChanges="orientation|screenSize"
android:hardwareAccelerated="true" />
<activity
android:name="com.applovin.impl.adview.AppLovinOrientationAwareInterstitialActivity"
android:configChanges="orientation|screenSize"
android:hardwareAccelerated="true"
android:screenOrientation="behind" />
<activity
android:name="com.applovin.sdk.AppLovinWebViewActivity"
android:configChanges="keyboardHidden|orientation|screenSize" />
<activity
android:name="com.applovin.mediation.MaxDebuggerActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:theme="@style/com.applovin.mediation.MaxDebuggerActivity.Theme" />
<activity
android:name="com.chartboost.sdk.CBImpressionActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:excludeFromRecents="true"
android:hardwareAccelerated="true"
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" />
<activity
android:name="com.facebook.ads.AudienceNetworkActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:exported="false" />
<activity
android:name="com.facebook.ads.internal.ipc.RemoteANActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:exported="false"
android:process=":adnw" />
<service
android:name="com.facebook.ads.internal.ipc.AdsProcessPriorityService"
android:exported="false" />
<service
android:name="com.facebook.ads.internal.ipc.AdsMessengerService"
android:exported="false"
android:process=":adnw" />
<activity
android:name="com.inmobi.rendering.InMobiAdActivity"
android:configChanges="keyboardHidden|orientation|keyboard|smallestScreenSize|screenSize|screenLayout"
android:hardwareAccelerated="true"
android:resizeableActivity="false"
android:theme="@android:style/Theme.NoTitleBar"
tools:ignore="Unusedattr" />
<activity
android:name="com.ironsource.sdk.controller.ControllerActivity"
android:configChanges="orientation|screenSize"
android:hardwareAccelerated="true" />
<activity
android:name="com.ironsource.sdk.controller.InterstitialActivity"
android:configChanges="orientation|screenSize"
android:hardwareAccelerated="true"
android:theme="@android:style/Theme.Translucent" />
<activity
android:name="com.ironsource.sdk.controller.OpenUrlActivity"
android:configChanges="orientation|screenSize"
android:hardwareAccelerated="true"
android:theme="@android:style/Theme.Translucent" />
<activity
android:name="jp.maio.sdk.android.AdFullscreenActivity"
android:configChanges="orientation|screenLayout|screenSize"
android:hardwareAccelerated="true"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
<activity
android:name="jp.maio.sdk.android.HtmlBasedAdActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
<activity
android:name="com.tapjoy.TJAdUnitActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"
android:hardwareAccelerated="true" />
<activity
android:name="com.tapjoy.TJContentActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:theme="@android:style/Theme.Translucent.NoTitleBar" />
<activity
android:name="com.unity3d.services.ads.adunit.AdUnitActivity"
android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"
android:hardwareAccelerated="true"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
<activity
android:name="com.unity3d.services.ads.adunit.AdUnitTransparentActivity" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"
android:hardwareAccelerated="true"
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" />
<activity
android:name="com.unity3d.services.ads.adunit.AdUnitTransparentSoftwareActivity"
android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"
android:hardwareAccelerated="false"
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" />
<activity
android:name="com.unity3d.services.ads.adunit.AdUnitSoftwareActivity"
android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"
android:hardwareAccelerated="false"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
<activity
android:name="com.vungle.warren.ui.VungleActivity"
android:configChanges="keyboardHidden|orientation|screenSize|screenLayout|smallestScreenSize"
android:launchMode="singleTop"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
<activity
android:name="com.vungle.warren.ui.VungleFlexViewActivity"
android:configChanges="keyboardHidden|orientation|screenSize|screenLayout|smallestScreenSize"
android:hardwareAccelerated="true"
android:launchMode="singleTop"
android:theme="@android:style/Theme.Translucent.NoTitleBar" />
</application>
</manifest>
Within the application element of the AndroidManifest.xml file add your Google AdMob Application ID from the AdMob dashboard, see documentation.
<application>
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-xxxxxxxxxxxxxxxx~xxxxxxxxxx"/>
</application>
For Android P (9.0) or higher devices, in order to load ads a config must be added to the AndroidManifest.xml, see full details on the Facebook website.
Continue to Quickstart to initialise Tapdaq SDK.
If you are having any problems integrating, feel free to contact us on [email protected] and we will be more than happy to help.