An in-depth guide on how to configure CometChat.

Get your Application Keys

Signup for CometChat and then:

  1. Create a new app on the dashboard



Please follow the key concepts guide to create V3 apps.

  1. Head over to the API Keys section and note the Auth Key, App ID & Region


Minimum Requirement

  • Android API Level 21
  • Androidx Compatibility
  • Compile and Target SDK version 29
  • Build Tool Version 29

Add the CometChat Dependency


First, add the repository URL to the project level build.gradle file in the repositories block under the allprojects section:

allprojects {
  repositories {
    maven {
      url ""

Then, add CometChat to the app level build.gradle file in the dependencies section.

dependencies {
  implementation 'com.cometchat:pro-android-chat-sdk:3.0.1'



v2.4+ onwards, Voice & Video Calling functionality has been moved to a separate library. In case you plan to use the calling feature, please add the Calling dependency implementation 'com.cometchat:pro-android-calls-sdk:2.1.1' in the dependencies section of the app-level build.gradle file.

Finally, add the below lines android section of the app level gradle file.

android {
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8

Initialize CometChat

The init() method initializes the settings required for CometChat.

The init() method takes the below parameters:

  1. context - Application Context of the Android app.
  2. appId - You CometChat App ID
  3. appSettings - An object of the AppSettings class can be created using the AppSettingsBuilder class.

The AppSettings class allows you to configure two settings:

  1. Region - The region where the app was created
  2. Presence Subscription

We suggest you call the init() method on app startup, preferably in the onCreate() method of the Application class.

private String appID = "APP_ID"; // Replace with your App ID
private String region = "REGION"; // Replace with your App Region ("eu" or "us")

AppSettings appSettings=new AppSettings.AppSettingsBuilder().subscribePresenceForAllUsers().setRegion(region).build();

CometChat.init(this, appID,appSettings, new CometChat.CallbackListener<String>() {
  public void onSuccess(String successMessage) {
    Log.d(TAG, "Initialization completed successfully");
  public void onError(CometChatException e) {
    Log.d(TAG, "Initialization failed with exception: " + e.getMessage());
val appID:String="APP_ID"  // Replace with your App ID
val region:String="REGION"  // Replace with your App Region ("eu" or "us")
AppSettings appSetting = AppSettings.AppSettingsBuilder().setRegion(region).subscribePresenceForAllUsers().build();   

CometChat.init(this,appID,appSetting, object : CometChat.CallbackListener<String>() {
 override fun onSuccess(p0: String?) {
    Log.d(TAG, "Initialization completed successfully")

  override fun onError(p0: CometChatException?) {
    Log.d(TAG, "Initialization failed with exception: " + p0?.message)




Android context for your application


CometChat App ID


An object of the AppSettings class.

Did this page help you?