Getting Started with the Android SDK
Getting started with the Taboola Android SDK
DEPRECATION NOTICE
On March 31, 2025, Taboola will sunset SDK 2.
Before then, please make sure to migrate to SDK 4 for Android.
Step 1: Add the Repository URL
There are 2 options, depending on how you configure your project repositories.
build.gradle
If you are using build.gradle
to configure your repositories, add the Taboola URL in your top-level build.gradle
file, under allprojects
> repositories
:
buildscript {
repositories {
...
}
dependencies {
...
}
}
allprojects {
repositories {
...
maven {
// Taboola:
url 'https://taboolapublic.jfrog.io/artifactory/mobile-release'
}
}
}
Add the Taboola URL:
- In your top-level
build.gradle
file.- Under
allprojects
>repositories
.
settings.gradle
If you are using settings.gradle
to configure your repositories, add the Taboola URL in settings.gradle
:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS)
repositories {
google()
mavenCentral()
jcenter()
maven {
// Taboola:
url "https://taboolapublic.jfrog.io/artifactory/mobile-release"
}
}
}
Step 2: Add the library dependency to your project
In your app module build.gradle
file, add the Taboola SDK dependencies:
//Include the Taboola SDK binary
implementation 'com.taboola:android-sdk:<<androidV2Version>>'
//Taboola SDK requires the following dependency (mandatory)
implementation 'com.android.support:customtabs:28.0.0'
Make sure to indicate the latest Taboola SDK version - e.g.
<<androidV2Version>>
for SDK V2.
Gradle plugin version
If you get an
Android resource linking failed
Gradle error, see this link.
Step 3: For Publishers who use AndroidX
Taboola recommends using Android SDK 2.7.0 and above if you're using AndroidX in your project.
Please follow these two steps to make sure the SDK and your AndroidX works well:
- Taboola SDK requires to enable the "Jetifier". Please add the following lines to your
gradle.properties
file:
android.useAndroidX=true
android.enableJetifier=true
- In your app module
build.gradle
file, add theandroidx.browser
dependency, in place ofcom.android.support:customtabs
.
dependencies {
implementation "androidx.browser:browser:1.2.0"
// If you're targeting API 29 or above, add this dependency as well:
implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.0.0'
}
//If you're using Java 1.7 - please use version 1.0.0 of the androidx.browser:browser dependency -
// "androidx.browser:browser:1.0.0"
Step 4: Verify the AndroidManifest.xml
Include these lines in your app’s AndroidManifest.xml to allow Internet access and read the network state
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
Step 5: Proguard rules
Consumed Proguard Rules
Starting from Android SDK version 2.3.7, Taboola SDK will automatically add the Proguard rules to the project. If you wish to work manually, you can use the following rules.
Add the following Proguard rules (relevant for Android SDK version 2.3.3 (including) and above)
###---------- Begin: proguard configuration for Taboola Android SDK 2.3.3 and above ----------
-dontwarn com.taboola.android.api.**
-keepnames class com.taboola.android.integration_verifier.testing.tests.proguard_stub.ProguardVerificationStub
-keep class com.taboola.android.TaboolaContextProvider { *; }
###---------- End: proguard configuration for Taboola Android SDK 2.3.3 and above ------------
For the PG rule for Android SDK versions 2.1.1 until SDK version 2.3.0 (including) - click here
For the PG rules for Android SDK versions before 2.1.0 - click here
Step 6: Allowing HTTP traffic (optional)
Starting with Android 9.0 (API level 28), HTTP traffic (non-secured) is disabled by default. We recommend allowing HTTP traffic to support Taboola's advertisers who are not using secure landing pages.
If you can allow HTTP traffic, please add the android:usesCleartextTraffic="true"
setting to your AndroidManifest.xml
file
<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
<uses-permission android:name="android.permission.INTERNET" />
<application
...
android:usesCleartextTraffic="true"
...>
</application>
</manifest>
How to update the SDK (optional)
We encourage developers to use the latest SDK version. To stay up-to-date, please check our announcements and change log. We highly recommend updating to the latest SDK version once a quarter.
How to upgrade?
When upgrading the SDK please update your build.gradle
file with the latest version - replace the [LATEST_SDK_VERSION_HERE]
with the latest version number
implementation 'com.taboola:android-sdk:[LATEST_SDK_VERSION_HERE]'
Special Instructions for upgrading from a specific Android SDK versions
Upgrading from SDK versionn | Special instructions |
---|---|
2.0.0 until 2.2.1 (including) | When using Widget via Native (SDK Standard), the SDK will update the widget height more than once |
1.x.x | Any upgrade from SDK 1.x.x to SDK 2.x.x should be considered as a new integration. Please go over all of the steps outlined on this documentation |
SDK Size
- Taboola SDK supports Android API 14 and above
- The SDK size is 441.89 KB
Updated 15 days ago