The Customer Data Platform for Developers
Website · Documentation · Community Slack
The Kotlin SDK enables you to track customer event data from your Android or Kotlin JVM applications and send it to your configured destinations via RudderStack.
- Installing the Kotlin Android SDK
- Installing the Kotlin JVM SDK
- Initializing the SDK
- Identifying your users
- Tracking user actions
- Integrations
- Contact us
Add the SDK to your Android project using Gradle:
dependencies {
implementation("com.rudderstack.sdk.kotlin:android:<latest_version>")
}
Replace <latest_version> with the version number you want to use. You can find the latest release here.
Add the SDK to your Kotlin JVM project using Gradle:
dependencies {
implementation("com.rudderstack.sdk.kotlin:core:<latest_version>")
}
Replace <latest_version> with the version number you want to use. You can find the latest release here.
To initialize the Android RudderStack SDK, add the Analytics initialisation snippet to your application’s entry point (e.g., in onCreate method):
import android.app.Application
import com.rudderstack.sdk.kotlin.android.Analytics
import com.rudderstack.sdk.kotlin.android.Configuration
class MyApplication : Application() {
lateinit var analytics: Analytics
override fun onCreate() {
super.onCreate()
initializeAnalytics(this)
}
private fun initializeAnalytics(application: Application) {
analytics = Analytics(
configuration = Configuration(
writeKey = "<WRITE_KEY>",
application = application,
dataPlaneUrl = "<DATA_PLANE_URL>",
)
)
}
}Replace:
<WRITE_KEY>: Your project’s write key.<DATA_PLANE_URL>: The URL of your RudderStack data plane.
The identify API lets you recognize a user and associate them with their traits:
analytics.identify(
userId = "1hKOmRA4el9Zt1WSfVJIVo4GRlm",
traits = buildJsonObject {
put("name", "Alex Keener")
put("email", "[email protected]")
}
)The track API lets you capture user events:
analytics.track(
event = "Order Completed",
properties = buildJsonObject {
put("revenue", 30)
put("currency", "USD")
}
)RudderStack Kotlin SDK supports various third-party integrations that allow you to send your event data to external analytics and marketing platforms. These integrations are implemented as separate modules that you can include in your project as needed.
The following integrations are currently available:
- Firebase - Send your event data to Google Firebase Analytics
- Adjust - Track and attribute your mobile app installs and in-app events
- Braze - Send your event data to Braze for customer engagement
- Facebook - Send your event data to Facebook for analytics and advertising
- AppsFlyer - Send your event data to AppsFlyer for analytics
To use an integration, follow these steps:
- Add the integration dependency to your project's
build.gradle.ktsfile - Initialize the RudderStack SDK as usual
- Add the integration to your Analytics instance
Example with multiple integrations:
class MyApplication : Application() {
lateinit var analytics: Analytics
override fun onCreate() {
super.onCreate()
// Initialize RudderStack SDK
analytics = Analytics(
configuration = Configuration(
writeKey = "<WRITE_KEY>",
application = this,
dataPlaneUrl = "<DATA_PLANE_URL>",
)
)
// Add integrations
analytics.add(FirebaseIntegration())
analytics.add(BrazeIntegration())
// Add more integrations as needed
}
}For more information:
- Email us at [email protected]
- Join our Community Slack