Send your first message
Sendbird UIKit for Android is a set of prebuilt UI components that allows you to easily craft an in-app chat with all the essential messaging features. Our development kit includes light and dark themes, fonts, colors and more. You can customize these components to create an interactive messaging interface unique to your brand identity.
Sendbird UIKit supports both open channels and group channels. Follow the guide below to start sending a message from scratch using Java
or Kotlin
.
Requirements
The minimum requirements for UIKit for Android are:
Android 5.0 (API level 21) or higher
Java 8 or higher
Support androidx only
Android Gradle plugin 4.0.1 or higher
Sendbird Chat SDK for Android 4.0.3 and later
Before you start
In this quickstart guide, you will be installing Sendbird SDK, implementing codes to create a open channel with a user, and send a message within a few minutes. Before you start, you need to have the following:
- Sendbird application on Sendbird Dashboard
- A user in the Sendbird application
Create a Sendbird application from dashboard
A Sendbird application comprises everything required in a chat service including users, messages, and channels. You need the Application ID of your Sendbird application from the dashboard when initializing the Chat SDK.
-
Go to Sendbird Dashboard and create an account for a free trial. If you already have a Sendbird account, sign into your account.
-
Create a new application by clicking Create + at the bottom right of your screen.
-
Enter a name for your application. Choose a Product Type and Region. Then, click Confirm.
-
Click the application you just created under Applications. You will see the application's Application ID which you will need when initializing the Chat SDK.
Note: Each Sendbird application can be integrated with a single client app. Within the same application, users can communicate with each other across all platforms, whether they are on mobile devices or on the web.
Create a user in the Sendbird application
In order to send a message, you need a user in a channel. You can either create a user on the Sendbird dashboard first or you can use a new unique ID that hasn’t been taken by any of your Sendbird application users. In the latter case, a new user is automatically created in your Sendbird application before being connected.
In this guide, we will create a user on the Sendbird dashboard first.
-
Go to the Users menu on the left-hand side of the dashboard and click Create user+.
-
Enter the User ID and Nickname. It is recommended that you check the box next to Issue access token for user authentication. Then, click Create.
Note: Sendbird supports user authentication through access token for stronger security. However, on the dashboard, you can also configure the token permission in Settings > Application > Security > Access token permission to allow users without a token to access our functionalities. To learn more, see Authentication.
- Copy and store the user ID. You will use it to connect to the Sendbird server.
Get started
You can start building a messaging experience in your app by installing Sendbird UIKit. This developer kit is an add-on feature to Sendbird Chat SDK so installing it will also install the core Chat SDK.
Step 1 Create a project
To get started, open Android Studio
and create a new project for UIKit in the Project window as follows:
- Click Start a new Android Studio project in the Welcome to Android Studio window.
- Select Empty Activity in the Select a Project Template window and click Next.
- Enter your project name in the Name field in the Configure your project window.
- Select your language as either Java or Kotlin from the Language drop-down menu.
- Make sure Use legacy android.support.libraries is unchecked.
- Select minimum API level as 21 or higher.
Step 2-1 Install UIKit - Configuring the repository
You can install UIKit for Android through Gradle
.
Gradle 6.8 or higher
If you are using Gradle 6.8 or higher, add the following to your settings.gradle
file:
Gradle 6.7 or lower
If you are using Gradle 6.7 or lower, add the following code to your root build.gradle
file:
Note: Make sure the above code block isn't added to your module
build.gradle
file.
Step 2-2 Install UIKit - Adding the Dependency
Add the dependency to your module build.gradle
file.
Before saving the build.gradle
file, check if you’ve enabled viewBinding
. Then, click the Sync button to apply all changes.
Note: UIKit SDK versions
2.1.1
or lower can be downloaded from JCenter until February 1, 2022. SDK versions higher than2.1.1
will be available on Sendbird's remote repository.
Step 3 Initialize SendbirdUIKit instance
To integrate and run Sendbird UIKit in your app, you need to initialize it first. You can initialize SendbirdUIKit
instance by passing the SendbirdUIKitAdapter
instance as an argument to a parameter in the SendbirdUIKit.init()
method. The SendbirdUIKit.init()
must be called once in the onCreate()
method of your app’s Application
instance.
Note: Local caching has now been added so that the client app can locally cache and retrieve channel and message data. The addition of this functionality requires the database to be initialized and run migration if needed. As a result, the initialization process of the
SendbirdUIKit
instance is now asynchronous and requires you to receive a callback function before you can move onto the next step. If the database fails to initialize, theonInitFailed()
method is called. If the database initializes, theonInitSucceed()
method is called and you can proceed to the next step. Refer to the updated code below.
Here, you will need to define YOUR_APP_ID
and USER_ID
for proper functioning of the kit.
-
YOUR_APP_ID
: you can find this on the Overview page on Sendbird dashboard. -
USER_ID
: the unique ID set to the user you've created on the dashboard. If you haven't created a user in advance, specifying a uniqueUSER_ID
in the code snippet provided will automatically generate a new user in the specified Sendbird application and connect it to the Sendbird server.
Note: Sendbird supports user authentication via access tokens, but defaults to allowing access without a token for ease of initial use. For enhanced security, we recommend adjusting the access settings of new users under Settings > Application > Security > Access token permission on the dashboard. To learn about authentication, see the Authentication guide.
Step 4 Add BaseApplication
Add the created BaseApplication
to AndroidManifest.xml
.
Step 5 Display channel list
ChannelListActivity
is the starting point for launching UIKit in your application. By implementing the code below, you will see a complete list of group channels that you're a member of.
Step 6 Send your first message
You can now run the application on an emulator or a plugged-in device. To send a message, you must first create a group channel by clicking on the icon in the top-right corner. Then, you can select users you wish to invite as members to your channel. Once the channel has been created, type your first message and press send.
You've successfully sent your first message with Sendbird.