> ## Documentation Index
> Fetch the complete documentation index at: https://cometchat-22654f5b-docs-rn-guide-message-privately.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

> Get started with the CometChat Android SDK - install, initialize, and add real-time chat to your Android application

<Note>
  🚀 **CometChat Android SDK v5 is now available!** It removes the Gson dependency, adds Parcelable support, and introduces structural equality. [Try the v5 →](/sdk/android/v5/overview)
</Note>

<Accordion title="AI Integration Quick Reference">
  ```kotlin theme={null}
  // 1. Add dependency to build.gradle
  implementation "com.cometchat:chat-sdk-android:4.2.0"

  // 2. Initialize (run once at app start)
  val appSettings = AppSettings.AppSettingsBuilder()
      .subscribePresenceForAllUsers()
      .setRegion("REGION")
      .build()
  CometChat.init(context, "APP_ID", appSettings, callback)

  // 3. Login user
  CometChat.login("UID", "AUTH_KEY", callback)  // Dev only
  ```

  **Required Credentials:** App ID, Region, Auth Key (dev) or Auth Token (prod)\
  **Get from:** [CometChat Dashboard](https://app.cometchat.com) → Your App → API & Auth Keys
</Accordion>

<Warning>
  `CometChat.init()` must be called before any other SDK method. Calling `login()`, `sendMessage()`, or registering listeners before `init()` will fail.
</Warning>

<Warning>
  **Auth Key** is for development/testing only. In production, generate **Auth Tokens** on your server using the REST API and pass them to the client. Never expose Auth Keys in production client code.
</Warning>

This guide demonstrates how to add chat to an Android application. Before you begin, we strongly recommend reading the [Key Concepts](/sdk/android/key-concepts) guide.

## Requirements

| Requirement                        | Minimum Version |
| ---------------------------------- | --------------- |
| Android API Level                  | 21              |
| Android API Level (with Calls SDK) | 24              |
| Java                               | 8               |
| AndroidX                           | Required        |

## Getting Started

<Steps>
  <Step title="Get your credentials">
    [Sign up for CometChat](https://app.cometchat.com) and create an app. Note your App ID, Region, and Auth Key from the Dashboard.
  </Step>

  <Step title="Install and initialize">
    Add the SDK to your project and initialize it with your credentials. See [Setup SDK](/sdk/android/setup).
  </Step>

  <Step title="Authenticate users">
    Log in users with Auth Key (development) or Auth Token (production). See [Authentication](/sdk/android/authentication-overview).
  </Step>

  <Step title="Start building">
    Send your first message, make a call, or manage users and groups.
  </Step>
</Steps>

## Features

<CardGroup cols={2}>
  <Card title="Messaging" icon="comments" href="/sdk/android/send-message">
    1:1 and group chat, threads, reactions, typing indicators, read receipts, file sharing, and interactive messages.
  </Card>

  <Card title="Voice & Video Calling" icon="phone" href="/sdk/android/calling-overview">
    Ringing flows, direct call sessions, standalone calling, recording, and screen sharing.
  </Card>

  <Card title="Users" icon="user" href="/sdk/android/users-overview">
    Create, retrieve, and manage users. Track online/offline presence and block/unblock users.
  </Card>

  <Card title="Groups" icon="users" href="/sdk/android/groups-overview">
    Public, private, and password-protected groups with member management, roles, and ownership transfer.
  </Card>
</CardGroup>

## Sample Apps

Import the app into Android Studio and follow the steps mentioned in the `README.md` file.

<CardGroup cols={3}>
  <Card title="Java" icon="java" href="https://github.com/cometchat-pro/android-java-chat-app">
    Java sample app
  </Card>

  <Card title="Kotlin" icon="code" href="https://github.com/cometchat-pro/android-kotlin-chat-app">
    Kotlin sample app
  </Card>
</CardGroup>

## UI Kits

Refer to the [Android UI Kit](/ui-kit/android/overview) for pre-built, customizable components.

## Resources

<CardGroup cols={2}>
  <Card title="Key Concepts" icon="lightbulb" href="/sdk/android/key-concepts">
    UIDs, GUIDs, auth tokens, and core SDK concepts
  </Card>

  <Card title="Message Structure" icon="sitemap" href="/sdk/android/message-structure-and-hierarchy">
    Message categories, types, and hierarchy
  </Card>

  <Card title="Changelog" icon="clock-rotate-left" href="/sdk/android/changelog">
    Latest SDK version and release notes
  </Card>

  <Card title="Upgrading from V3" icon="arrow-up" href="/sdk/android/upgrading-from-v3-guide">
    Migration guide for V3 users
  </Card>

  <Card title="Publishing to Play Store" icon="google-play" href="/sdk/android/publishing-app-on-playstore">
    Steps to publish your Android app
  </Card>
</CardGroup>

***

## Next Steps

<CardGroup cols={2}>
  <Card title="Setup SDK" icon="gear" href="/sdk/android/setup">
    Detailed installation and initialization guide for the Android SDK
  </Card>

  <Card title="Key Concepts" icon="book" href="/sdk/android/key-concepts">
    Understand core concepts like users, groups, messages, and conversations
  </Card>

  <Card title="Authentication" icon="key" href="/sdk/android/authentication-overview">
    Learn about secure authentication with Auth Tokens for production apps
  </Card>

  <Card title="Send Messages" icon="paper-plane" href="/sdk/android/send-message">
    Start sending text, media, and custom messages to users and groups
  </Card>
</CardGroup>
