Configure the SDK
Initialize Clerk once at app launch in your Application class before accessing any Clerk features.
Basic configuration
package com.example.myclerkapp
import android.app.Application
import com.clerk.api.Clerk
class MyClerkApp: Application() {
override fun onCreate() {
super.onCreate()
Clerk.initialize(
this,
publishableKey = "YOUR_PUBLISHABLE_KEY"
)
}
}Register your Application class in AndroidManifest.xml:
<application android:name=".MyClerkApp">
...
</application>Wait for initialization
The Clerk SDK initialization is non-blocking. Listen for the SDK to be ready before using Clerk features:
import com.clerk.api.Clerk
import kotlinx.coroutines.flow.first
// Wait for initialization
Clerk.isInitialized.first { it }
// Now safe to use Clerk
val user = Clerk.userFlow.valueClerk
Learn how to access Clerk in your app.
Android Quickstart
Follow the end-to-end setup guide for a Clerk-powered Android app.
Feedback
Last updated on
Edit on GitHub