For the complete documentation index, see llms.txt. This page is also available as Markdown.

Android SDK

This guide explains how to install and configure WotNot’s Android SDK to embed the native chat widget inside your Android app.

Step 1: Add the SDK Package

1: Add dependency

Add the WotNot SDK and required Android libraries in your app-level build.gradle file:

dependencies {
    // WotNot Chatbot SDK
    implementation 'io.wotnot.android:chatbotsdk:1.0.3'

    // Required Android dependencies
    implementation 'androidx.core:core-ktx:1.13.1'
    implementation 'androidx.appcompat:appcompat:1.7.0'
    implementation 'com.google.android.material:material:1.12.0'
    implementation 'androidx.constraintlayout:constraintlayout:2.2.0'
    implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.7'
    implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.8.7'
    implementation 'androidx.fragment:fragment-ktx:1.8.5'
    implementation 'androidx.activity:activity-ktx:1.9.3'
}

1.2: Sync Gradle

In Android Studio:

  • File → Sync Project with Gradle Files

  • Or use the toolbar sync button

Step 3: Add required permissions

Add the following permissions to your AndroidManifest.xml:

Step 2: SDK Configuration

2.1 Create a WidgetConfig

The SDK requires a WidgetConfig object to initialize the chat widget.

Where to find these credentials

YOUR_BOT_ID — open the bot you want to embed, and copy the bot_id from the URL.

YOUR_ACCOUNT_ID — goto Settings > Account Settings and copy the account_id from the URL.

YOUR_ACCOUNT_KEY — Goto the bot list screen, open the embed option from context menu and copy the highlighted key.

Visitor key notes

  • If you don’t provide a visitorKey, the SDK auto-generates and persists one.

  • It’s recommended to provide the unique visitor key, as it helps uniquely identify each visitor and maintain their chats and session history.


Step 2: Initialize the SDK

Call wn.initialize() in your Application class or MainActivity.

IMPORTANT


Step 3: Launching the chat screen

The SDK provides built-in functions to launch chat screens.

All functions optionally support useAnimation = true.

3.1 Conversation list screen

3.2 Conversation detail screen without key

3.2 Ending the conversation

Step 4: Theme customization

You can fully customize the look of the chat widget using WidgetTheme.

4.1 Theme options

Property
Setter
Default
Used For

accentPrimary

setAccentPrimary()

#0075ff

Buttons, headers, links

userMessageTextColor

setUserMessageTextColor()

#FFFFFF

User message text & timestamp

accentSecondary

setAccentSecondary()

#d4e3ffff

Secondary accents

gray8

setGray8()

#F2F5F8

Bot message background

botMessageTextColor

setBotMessageTextColor()

#1C1C1E

Bot text & timestamp

failurePrimary

setFailurePrimary()

#FF0000

Error messages

failureSecondary

setFailureSecondary()

#FFEBEE

Error states

4.2 Applying a theme

Complete integration example

Below is a full working example combining all steps:

Last updated

Was this helpful?