The Courier Android SDK provides prebuilt UI components and Kotlin APIs for adding in-app notifications, push notifications, and notification preferences to your Android app. It handles authentication, token management, and real-time message delivery so you can focus on your app.
Requires Android SDK 23+ and Gradle 8.4+.
Add the Jitpack repository to your settings.gradle:
dependencyResolutionManagement {
repositories {
google()
mavenCentral()
maven { url 'https://jitpack.io' }
}
}Add the dependency to your app's build.gradle:
dependencies {
implementation 'com.github.trycourier:courier-android:6.1.1'
}Replace LATEST_VERSION with the current release from GitHub Releases.
class YourApplication : Application() {
override fun onCreate() {
super.onCreate()
Courier.initialize(this)
}
}
// Sign in (JWT generated by your backend)
lifecycleScope.launch {
Courier.shared.signIn(
accessToken = jwt,
userId = "user_123"
)
}
// Drop in a prebuilt Inbox (Jetpack Compose)
CourierInbox(
onClickMessageListener = { message, _ ->
if (message.isRead) message.markAsUnread() else message.markAsRead()
}
)Full documentation lives at courier.com/docs/sdk-libraries/android — installation, authentication, push setup (including Firebase decoupling), theming, custom UI, and the CourierClient API reference.
Found a bug or want to request a feature? Open an issue.