Setup

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

🚧

Important

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

Gradle

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

allprojects {
  repositories {
    maven {
      url "https://dl.cloudsmith.io/public/cometchat/cometchat-pro-android/maven/"
    }
  }
}

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'
}

📘

Important

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>() {
  @Override
  public void onSuccess(String successMessage) {
    Log.d(TAG, "Initialization completed successfully");
  }
  @Override
  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)
  }
  
 })

Parameter

Description

this

Android context for your application

appID

CometChat App ID

appSetting

An object of the AppSettings class.


Did this page help you?