• Platforms
  • Partners
  • Forums
  • TLC Tealium Learning Center Tealium Learning
    Community
  • Discussions & Ideas Dicussions & Ideas
  • Product Guides Product Guides
  • Knowledge Base Knowledge Base
  • Developer Docs Developer Docs
  • Education Education
  • TLC Blog TLC Blog
  • Support Desk Support Desk
  • CDH Customer Data Hub Customer Data Hub

Table of Contents

  • Class: TealiumConfig
    • consentExpiry
    • consentManagerEnabled
    • consentManagerPolicy
    • consentManagerLoggingEnabled
    • consentManagerLoggingUrl
    • deepLinkTrackingEnabled
    • hostedDataLayerMaxCacheTimeMinutes
    • hostedDataLayerEventMappings
    • logLevel
    • TealiumConfig
    • timedEventTriggers
ANDROID KOTLIN

TealiumConfig

Reference guide for TealiumConfig class and methods provided by Tealium for Android (Kotlin).

Class: TealiumConfig

The TealiumConfig class provides methods to set configuration options for the main Tealium class. The following document summarizes the commonly used methods and properties of the TealiumConfig class for Kotlin. Individual modules may also provide their own extensions for the TealiumConfig class if they are enabled - these are documented in the relevant module’s own document.

Method/Property Description
consentExpiry Sets the expiration of the user consent selections
consentManagerEnabled Optional Boolean to enable/disable Consent Management functionality
consentManagerPolicy Optional ConsentPolicy to determine which consent functionality to adhere to
consentManagerLoggingEnabled Optional Boolean to enable/disable logging of consent changes
consentManagerLoggingUrl Optional String for the destination of any consent logging updates
deepLinkTrackingEnabled Enables or disables automatic tracking of deep links
hostedDataLayerMaxCacheTimeMinutes Sets an expiration on the hosted data layer data
hostedDataLayerEventMappings Sets the event mappings used by the hosted data layer module when looking up data layer IDs
logLevel Sets the log level property, which controls how much information is logged
TealiumConfig Constructor method that creates a TealiumConfig instance

consentExpiry

Sets the expiration time of the user consent selections. Set this property prior to Tealium initialization. The default expiration times for consent selections are:

  • CCPA: 395 days
  • GDPR: 365 days

The following sets the consent expiry to 90 days.

config.consentExpiry = ConsentExpiry(90, TimeUnit.DAYS)

consentManagerEnabled

Sets whether the ConsentManager module is enabled or not. It is also required to set a Policy via consentManagerPolicy.

config.consentManagerEnabled = true  // enable

consentManagerPolicy

Sets the ConsentPolicy that is adhered to within the app. This policy controls whether or not Dispatches are queued and dropped throughout the SDK in accordance with the relevant legal requirements.

config.consentManagerPolicy = ConsentPolicy.GDPR

consentManagerLoggingEnabled

Sets whether changes in consent preferences need to be sent to a remote server to be recorded.

config.consentManagerLoggingEnabled = true

consentManagerLoggingUrl

Sets the URL used when logging consent preference changes.

config.consentManagerLoggingUrl = url

deepLinkTrackingEnabled

Enables or disables automatic tracking of standard deep links, such as links to the app from Facebook or other sources, as well as QR trace. Enabled by default.

config.deepLinkTrackingEnabled = true

hostedDataLayerMaxCacheTimeMinutes

Sets an expiration on the hosted data layer data. If this property isn’t set, hosted data layer items persist for 7 days by default, and are re-downloaded from the CDN once this period has expired.

hostedDataLayerMaxCacheTimeMinutes = 30

If your hosted data layer is frequently updated, setting a lower value may impact battery life due to increased network requests.

hostedDataLayerEventMappings

Sets the hosted data layer keys (lookup variables) used by the hosted data layer module when retrieving data layer IDs. The key is the value in the tealium_event key of a dispatch.

hostedDataLayerEventMappings = mapOf("pdp" to "product_id")

logLevel

Sets the log level property, which controls how much information is logged, to one of the following values:

Log Level Log Activity Description
DEV Debug-level events used for debugging an application (recommended for development environment)
QA Informational events that highlight the progress of the application
PROD Error events such as critical errors and failures
SILENT No logging
Logger.logLevel = LogLevel.DEV

View your development logs in the Android Studio using LogCat. View your production logs with LogCat app by connecting your Android device.

TealiumConfig

Constructor method that creates a TealiumConfig instance.

val config = TealiumConfig(
      application,
      account,
      profile,
      environment);

The TealiumConfig instance is configured with the following parameters:

Parameters Type Description Example
application Application The application instance applicationObj
account String Tealium account name "companyXYZ"
profile String Tealium profile name "main"
environment String Tealium environment name Environment.PROD

The following is an example:

// Assuming execution is within Application.onCreate()
val config = TealiumConfig(this, "ACCOUNT_NAME", "PROFILE_NAME", Environment.PROD)

// Add required Dispatchers
config.dispatchers.addAll(setOf(CollectDispatcher, TagManagementDispatcher))

// Add required Modules
config.modules.add(VisitorService)

timedEventTriggers

A list of EventTrigger objects for automatically tracking timed events.

val config = TealiumConfig(…).apply {
  timedEventTriggers = mutableListOf(
     EventTrigger.forEventName(
       start_event,
       stop_event,
       timed_event_name)
  )  
}

The following are EventTrigger parameters:

Parameter Type Description
start_event String Name of the TealiumEvent to start the timed event
stop_event String Name of the TealiumEvent to stop the timed event
timed_event_name String? (Optional) Name of timed event (default: "start_event::stop_event")
Tealium
VisitorProfile

 
  • Mobile
  • Getting Started
    • Overview
    • Quick Start Guide
    • Mobile Concepts
    • Client-Side
    • Server-Side
    • Tracking Webviews
    • Data Layer
    • Consent Management
    • Event Batching
    • User Location and Geofencing
    • Deep Links
    • Timed Events
    • Trace
    • Hosted Data Layer
    • Feature Comparison
    • Troubleshooting
  • Remote Commands
    • Overview
    • How It Works
    • Integrations
      • AppsFlyer
      • Braze
      • Contentsquare
      • Facebook
      • Firebase
      • Kochava
      • Usabilla
  • Android (Java)
    • Overview
    • Install
    • Track
    • Data Layer
    • Data Management
    • Consent Management
    • Module List
      • Ad Identifier Module
      • Crash Reporter Module
      • Install Referrer Module
      • Lifecycle Tracking Module
      • Location Module
      • Optimizely X Tracking Module
    • Android TV
    • Android Wear
    • API Reference
      • ConsentManager
      • DataSources
      • Lifecycle
      • Tealium
      • Tealium.Config
      • TealiumLocation
    • Release Notes
  • Android (Kotlin)
    • Overview
    • Install
    • Track
    • Data Layer
    • Consent Management
    • Identity Resolution
    • Module List
      • Ad Identifier Module
      • Collect Module
      • Collectors Module
      • Crash Reporter Module
      • Install Referrer Module
      • Lifecycle Tracking Module
      • Location Manager Module
      • RemoteCommands Module
      • Tag Management Dispatcher Module
      • Visitor Service Module
    • Android TV
    • API Reference
      • ConsentCategory
      • ConsentManager
      • CurrentVisit
      • DataLayer
      • Lifecycle
      • LocationManager
      • Tealium
      • TealiumConfig
      • VisitorProfile
      • VisitorService
    • Release Notes
  • Cordova
    • Overview
    • Install
    • Track
    • Data Management
    • Module List
      • Ad Identifier Module
      • Crash Reporter Module
      • Install Referrer Module
    • API Reference
    • Release Notes
  • Flutter
    • Overview
    • Install
    • Track
    • Consent Management
    • Data Management
    • API Reference
    • Release Notes
  • iOS (Objective-C)
    • Overview
    • Install
    • Track
    • Data Layer
    • Data Management
    • Consent Management
    • Tag Management
    • Module List
      • Lifecycle Tracking Module
    • tvOS
    • watchOS
    • API Reference
    • Release Notes
  • iOS (Swift) 1.x
    • Overview
    • Install
    • Track
    • Data Layer
    • Data Management
    • App Extensions
    • Identity Resolution
    • Consent Management
    • Modules
    • Module List
      • AppData Module
      • Attribution Module
      • AutoTracking Module
      • Collect Module
      • Connectivity Module
      • CrashReporter Module
      • DataSource Module
      • DefaultStorage Module
      • Delegate Module
      • DeviceData Module
      • DispatchQueue Module
      • FileStorage Module
      • Lifecycle Module
      • Location Module
      • Logger Module
      • PersistentData Module
      • RemoteCommands Module
      • TagManagement Module
      • VisitorService Module
      • VolatileData Module
    • Feature Comparison
    • Working with Objective-C
    • API Reference
      • TealiumConfig
      • TealiumConsentCategories
      • TealiumConsentManagerDelegate
      • TealiumConsentManager
      • TealiumInstanceManager
      • TealiumPersistentData
      • TealiumVolatileData
      • Tealium
    • Release Notes
  • iOS (Swift) 2.x
    • Overview
    • Install
    • Track
    • Data Layer
    • Consent Management
    • App Extensions
    • Identity Resolution
    • Modules
    • Module List
      • AppData Module
      • Attribution Module
      • AutoTracking Module
      • Collect Module
      • Connectivity Module
      • CrashReporter Module
      • DeviceData Module
      • Lifecycle Module
      • Location Module
      • RemoteCommands Module
      • TagManagement Module
      • VisitorService Module
    • Working with Objective-C
    • API Reference
      • Tealium
      • TealiumConfig
      • TealiumConsentCategories
      • TealiumConsentManager
      • TealiumDataLayer
      • TealiumInstanceManager
    • Release Notes
  • NativeScript
    • Overview
    • Install
    • Track
    • API Reference
      • Tealium
      • TealiumConfig
    • Release Notes
  • React Native 1.x
    • Overview
    • Install
    • Track
    • API Reference
    • Release Notes
  • React Native 2.x
    • Overview
    • Install
    • Track
    • API Reference
    • Release Notes
  • Unity
    • Overview
    • Install
    • Track
    • API Referencee
  • Xamarin
    • Overview
    • Install
    • Track
    • Data Management
    • Consent Management
    • API Reference
    • Release Notes
  • Web
  • Getting Started
    • Overview
    • Quick Start Guide
    • Web Concepts
  • Adobe Launch
    • Overview
    • Install
    • Data Layer
  • AMP
    • Install
    • Track
    • Data Layer
    • Overview
  • Angular
    • Install
    • Track
    • API Reference
    • Overview
  • Google Tag Manager
    • Overview
    • Data Layer
    • Install
  • JavaScript (Web)
    • Install
    • Track
    • Data Layer
    • Overview
    • Universal Data Object (utag_data)
    • Universal Tag (utag.js)
    • Data Layer Object (b)
    • Single-Page Applications
    • Settings
    • Debugging
    • API Reference
      • Cookie Functions
      • GDPR Functions
      • Tracking Functions
      • Utility Functions
    • Release Notes
  • Server
  • C#
    • Overview
    • Install
    • Track
    • Data Layer
    • API Reference
    • Release Notes
  • HTTP API
    • Overview
    • Endpoint
    • Data Layer
  • Java
    • Overview
    • Install
    • Track
    • API Reference
    • Release Notes
  • Node
    • Overview
    • Install
    • Track
    • API Reference
  • Python
    • Overview
    • Install
    • Track
    • API Reference
  • Roku
    • Overview
    • Install
    • Track
    • API Reference
  • Ruby
    • Overview
    • Install
    • Track
    • API Reference

Was this article helpful?

This page was last updated: January 14, 2021       Thank you for your feedback!
  • Platforms
  • Partners
  • Forums
  • Mobile
  • Getting Started
  • Remote Commands
  • Android (Java)
  • Android (Kotlin)
  • Cordova
  • Flutter
  • iOS (Objective-C)
  • iOS (Swift) 1.x
  • iOS (Swift) 2.x
  • NativeScript
  • React Native 1.x
  • React Native 2.x
  • Unity
  • Xamarin
  • Web
  • Getting Started
  • Adobe Launch
  • AMP
  • Angular
  • Google Tag Manager
  • JavaScript (Web)
  • Server
  • C#
  • HTTP API
  • Java
  • Node
  • Python
  • Roku
  • Ruby