• 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
  • 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
    • Media Tracking
    • Deep Links
    • Timed Events
    • Trace
    • Hosted Data Layer
    • Adobe Visitor Service Module
    • Feature Comparison
    • Troubleshooting
  • Remote Commands
    • Overview
    • How It Works
    • Integrations
      • Adjust
      • AppsFlyer
      • Branch
      • 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
      • AutoTracking Module
      • AdobeVisitorService Module
      • Collect Module
      • Collectors Module
      • Crash Reporter Module
      • In-App Purchase Module
      • Install Referrer Module
      • Lifecycle Tracking Module
      • Location Manager Module
      • Media Module
      • RemoteCommands Module
      • Tag Management Dispatcher Module
      • Visitor Service Module
    • Android TV
    • API Reference
      • ConsentCategory
      • ConsentManager
      • CurrentVisit
      • DataLayer
      • Lifecycle
      • LocationManager
      • Media
      • Tealium
      • TealiumConfig
      • VisitorProfile
      • VisitorService
    • Release Notes
  • Cordova 1.x
    • Overview
    • Install
    • Track
    • Data Management
    • Module List
      • Ad Identifier Module
      • Crash Reporter Module
      • Install Referrer Module
    • API Reference
    • Release Notes
  • Cordova 2.x
    • Overview
    • Install
    • Track
    • API Reference
    • Release Notes
  • Flutter 1.x
    • Overview
    • Install
    • Track
    • Consent Management
    • Data Management
    • API Reference
    • Release Notes
  • Flutter 2.x
    • Overview
    • Install
    • Track
    • Consent Management
    • Data Management
    • API Reference
      • Tealium
      • TealiumConfig
      • VisitorProfile
    • 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
      • AdobeVisitorService Module
      • Attribution Module
      • AutoTracking Module
      • Collect Module
      • Connectivity Module
      • CrashReporter Module
      • DeviceData Module
      • In-App Purchase Module
      • Lifecycle Module
      • Location Module
      • Media Module
      • RemoteCommands Module
      • TagManagement Module
      • VisitorService Module
    • Working with Objective-C
    • API Reference
      • LocationModule
      • MediaSession
      • 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
    • Location Module
    • API Reference
    • Release Notes
  • Unity 1.x
    • Overview
    • Install
    • Track
    • API Reference
  • Unity 2.x
    • Overview
    • Install
    • Track
    • API Reference
  • Xamarin 1.x
    • Overview
    • Install
    • Track
    • Data Management
    • Consent Management
    • API Reference
    • Release Notes
  • Xamarin 2.x
    • Overview
    • Install
    • Track
    • Data Layer
    • Consent Management
    • API Reference
    • Release Notes
  • Web
  • Getting Started
    • Overview
    • Quick Start Guide
    • Web Concepts
    • Data Layer
      • An Introduction to the Data Layer
      • How the Data Layer Works for Websites
      • Data Layer Best Practices
      • Definitions
        • Retail
        • Publisher
        • Hotel
        • Travel
        • Basic Video Tracking
  • Adobe Launch
    • Overview
    • Install
    • Data Layer
  • AMP
    • Overview
    • Install
    • Track
    • Data Layer
  • Angular
    • Overview
    • Install
    • Track
    • API Reference
  • Google Tag Manager
    • Overview
    • Install
    • Data Layer
  • JavaScript (Web)
    • Overview
    • Install
    • Track
    • Data Layer
    • 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
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
adobeVisitorAuthState Sets the current authentication state for the visitor.
adobeVisitorCustomVisitorId Sets the known visitor ID to the Adobe ECID, if it’s known at initialization time. If the ECID changes in the future, call linkECIDToKnownIdentifier to update the visitor ID.
adobeVisitorDataProviderId Sets the data provider ID, provided by Adobe, which is required when linking an ECID to a known ID.
adobeVisitorExistingEcid Sets the existing ECID from a previous installation to be used, such as the Adobe SDK, instead of requesting a new ECID.
adobeVisitorOrgId String containing the Adobe Org ID including the @ portion.
adobeVisitorRetries The number of allowed invalid visitor ID retries before a request fails, which results in tracking calls being sent anyway without an ECID.
autoTrackingBlocklistFilename Sets the name of the local block list file.
autoTrackingBlocklistUrl Sets the URL of the remote block list file.
autoTrackingCollectorDelegate Sets the global delegate that executes for automatically tracked activities.
autoTrackingMode Sets the tracking mode for the AutoTracking module.
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.
consentManagerLoggingProfile Optional String to override the profile that Tealium Collect sends data to.
deepLinkTrackingEnabled Enables or disables automatic tracking of deep links.
existingVisitorId Set your own unique identifier, stored in tealium_visitor_id.
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.
remoteAPIEnabled Enables or disables remote_api event. Required for the RemoteCommands module if the DispatchQueue module in use.
sessionCountingEnabled Disables session counting for Tealium iQ accounts. Use this if you are self-hosting your Tealium JavaScript files
TealiumConfig Constructor method that creates an instance of TealiumConfig.

adobeVisitorAuthState

Sets the current authentication state for the visitor.

Example:

config.adobeVisitorAuthState = AdobeAuthState.AUTH_STATE_AUTHENTICATED
config.adobeVisitorAuthState = AdobeAuthState.AUTH_STATE_LOGGED_OUT
config.adobeVisitorAuthState = AdobeAuthState.AUTH_STATE_UNKNOWN

adobeVisitorCustomVisitorId

Sets the known visitor ID to the Adobe ECID, if it’s known at initialization time. If the ECID changes in the future, call linkECIDToKnownIdentifier to update the visitor ID.

config.adobeVisitorCustomVisitorId = "20381482060927465156359999806251989655"

adobeVisitorDataProviderId

Sets the data provider ID, provided by Adobe, which is required when linking an ECID to a known ID.

config.adobeVisitorDataProviderId = "01"

adobeVisitorExistingEcid

Sets the existing ECID from a previous installation to be used, such as the Adobe SDK, instead of requesting a new ECID.

Example:

config.adobeVisitorExistingEcid = "20381482060927465156359999806251989655"

adobeVisitorOrgId

String containing the Adobe Org ID including the @ portion. If the Org ID is not provided, the module is not initialized and no visitor ID is retrieved. Tracking calls continue as normal without an Adobe ECID.

config.adobeVisitorOrgId = STRING_VALUE

Example:

config.adobeVisitorOrgId = "1A2A111A111150AA0A110A12@AdobeOrg"

adobeVisitorRetries

The number of allowed invalid visitor ID retries before a request fails, which results in tracking calls being sent anyway without an ECID.

Example:

config.adobeVisitorRetries = 5

autoTrackingBlocklistFilename

For use with the AutoTracking Module.

Sets the name of a JSON formatted block list file that contains a list of activities to omit from automatic tracking. The file should be available in the Android assets directory.

config.autoTrackingBlocklistFilename = "autotracking-blocklist.json"

autoTrackingBlocklistUrl

For use with the AutoTracking Module.

Sets a URL to a JSON formatted block list file that contains a list of activities to omit from automatic tracking.

config.autoTrackingBlocklistUrl = "https://example.com/autotracking-blocklist.json"

autoTrackingCollectorDelegate

For use with the AutoTracking Module.

Sets a global delegate that executes for activities tracked by the AutoTracking module. Edit this delegate to customize the data included with specific activities.

config.autoTrackingCollectorDelegate = myCollectorDelegate

autoTrackingMode

Sets the level of tracking for the AutoTracking module.

  • FULL
    Track all activities except those annotated with @Autotracked(track=false).
  • ANNOTATED
    Track only the activities that are annotated with @Autotracked.
  • NONE
    Disable all automatic tracking (for debug or dev builds of your app).

    config.autoTrackingMode = AutoTrackingMode.FULL
    

Collectors

Collectors are modules that gather supplemental information from the device and append it to the data layer before it’s transmitted to the Tealium Customer Data Hub. Some collectors are included in the core library, while others are optional and installed as separate modules.

The following table lists the available collectors. Default collectors are denoted by a * next to the collector name.

Collector Name TealiumConfig Reference
AdobeVisitor Collectors.AdobeVisitor
AppData* Collectors.AppData
Connectivity* Collectors.Connectivity
Device Collectors.Device
Lifecycle Collectors.Lifecycle

These modules are enabled or disabled using the TealiumConfig collectors property.

The following example adds to existing list of collectors you’re using:

val config = TealiumConfig(collectors = mutableSetOf(Collectors.AdobeVisitor))

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

consentManagerLoggingProfile

Overrides the profile that Tealium Collect sends data to.

config.consentManagerLoggingProfile = "us-mobile"

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

existingVisitorId

Sets the data layer value for tealium_visitor_id. Use this when you have your own unique identifier.

config.existingVisitorId = "8243d23b56d5488571027547bc72d93"

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 to control how much information is logged. Setting this property overrides the default value that comes from the environment property in TealiumConfig.

Set log level 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.
config.logLevel = LogLevel.DEV

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

remoteAPIEnabled

Enables or disables remote_api event. Required for RemoteCommands module if DispatchQueue module in use. Default false.

config.remoteAPIEnabled = true

sessionCountingEnabled

Disables session counting for Tealium iQ accounts. Use this if you are self-hosting your Tealium JavaScript files. Default true.

config.sessionCountingEnabled = false

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)

// Automatic tracking mode
config.autoTrackingMode = AutoTrackingMode.FULL // (FULL, ANNOTATED, NONE)

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 "
Previous
Tealium
Next
VisitorProfile
"VisitorProfile"

 

Was this article helpful?

This page was last updated: March 4, 2022      

Thank you for your feedback!

Table of Contents

  • Class: TealiumConfig
    • adobeVisitorAuthState
    • adobeVisitorCustomVisitorId
    • adobeVisitorDataProviderId
    • adobeVisitorExistingEcid
    • adobeVisitorOrgId
    • adobeVisitorRetries
    • autoTrackingBlocklistFilename
    • autoTrackingBlocklistUrl
    • autoTrackingCollectorDelegate
    • autoTrackingMode
    • Collectors
    • consentExpiry
    • consentManagerEnabled
    • consentManagerPolicy
    • consentManagerLoggingEnabled
    • consentManagerLoggingProfile
    • consentManagerLoggingUrl
    • deepLinkTrackingEnabled
    • existingVisitorId
    • hostedDataLayerMaxCacheTimeMinutes
    • hostedDataLayerEventMappings
    • logLevel
    • remoteAPIEnabled
    • sessionCountingEnabled
    • TealiumConfig
    • timedEventTriggers
  • Platforms
  • Partners
  • Forums
  • Mobile
  • Getting Started
  • Remote Commands
  • Android (Java)
  • Android (Kotlin)
  • Cordova 1.x
  • Cordova 2.x
  • Flutter 1.x
  • Flutter 2.x
  • iOS (Objective-C)
  • iOS (Swift) 1.x
  • iOS (Swift) 2.x
  • NativeScript
  • React Native 1.x
  • React Native 2.x
  • Unity 1.x
  • Unity 2.x
  • Xamarin 1.x
  • Xamarin 2.x
  • Web
  • Getting Started
  • Adobe Launch
  • AMP
  • Angular
  • Google Tag Manager
  • JavaScript (Web)
  • Server
  • C#
  • HTTP API
  • Java
  • Node
  • Python
  • Roku
  • Ruby