SDK DocumentationRecipesAnnouncementsSupport Forum
AndroidiOSAnnouncementsSupport Forum

Getting Started with the Android SDK

Getting started with the Taboola Android SDK

🚧

SDK version

SDK V3 is the preferred Taboola SDK version.


All versions of the Taboola SDK are available via Artifactory.

🚧

Android 13

As of August 31, 2023, Google requires all Android apps to target Android 13.

If you are using SDK 2.x, you must use SDK 2.10.0 or higher.


For more information, see the Google announcement.

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:

  1. Taboola SDK requires to enable the "Jetifier". Please add the following lines to your gradle.properties file:
android.useAndroidX=true
android.enableJetifier=true
  1. In your app module build.gradle file, add the androidx.browser dependency, in place of com.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 versionnSpecial 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.xAny 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