Перейти к основному содержимому
Версия: 5.21.0

Быстрый старт

Сценарий «за 5 минут»: от подключённой зависимости до первого открытого чата.

Перед стартом

  • providerUid — уникальный ключ приложения, выданный edna.
  • URL сервера — полный URL вида https://name.edna.ru (выдаётся edna).
  • SDK подключён — зависимость добавлена в Gradle (см. Подключение).
Нет данных для подключения?

providerUid и URL отображаются администратору edna Chat Center на вкладке «Установка» Android-канала — обратитесь к нему. Пошаговая инструкция: Подключение мобильного чата Android. Если в вашей организации нет доступа к админке edna — напишите в поддержку.

Шаг 1. Инициализация в Application

Создайте собственный класс Application и проинициализируйте SDK один раз:

import edna.chatcenter.ui.visual.core.ChatCenterUI
import edna.chatcenter.ui.visual.ChatConfig
import edna.chatcenter.core.config.transport.ChatTransportConfig
import edna.chatcenter.core.config.transport.ChatNetworkConfig

class MyApp : Application() {

lateinit var chatCenterUI: ChatCenterUI

override fun onCreate() {
super.onCreate()

val chatConfig = ChatConfig(
ChatTransportConfig(cloudHost = "https://name.edna.ru"),
ChatNetworkConfig()
)

chatCenterUI = ChatCenterUI(applicationContext).apply {
init(providerUid = "YOUR_PROVIDER_UID", config = chatConfig)
}
}
}

Не забудьте указать класс в AndroidManifest.xml: <application android:name=".MyApp" ...>.

init() — до любых других вызовов SDK

authorize(...), handleFCMMessage(...) / handlePushMessage(...) до завершения init() приводят к IllegalStateException. Подробнее — Инициализация SDK.

Шаг 2. Авторизация пользователя

После того как ваше приложение авторизовало пользователя, сообщите SDK его идентификатор:

import edna.chatcenter.core.config.ChatUser

val user = ChatUser(identifier = "user-uuid-12345")
chatCenterUI.authorize(user, null)

Второй параметр null — если серверная авторизация через ChatAuth (Bearer-токен) не используется. Подробнее — Авторизация.

Шаг 3. Отображение чата

Добавьте контейнер в layout вашей Activity:

<FrameLayout
android:id="@+id/chat_container"
android:layout_width="match_parent"
android:layout_height="match_parent"/>

В Activity встройте ChatFragment:

import edna.chatcenter.core.annotation.OpenWay
import edna.chatcenter.ui.visual.fragments.ChatFragment

val chatCenterUI = (application as MyApp).chatCenterUI
val chatFragment = chatCenterUI.getChatFragment()
?: ChatFragment.newInstance(OpenWay.DEFAULT)

supportFragmentManager.beginTransaction()
.replace(R.id.chat_container, chatFragment)
.commit()

Альтернативы (готовая ChatActivity, BottomSheet, edge-to-edge, обработка «Назад») — Отображение чата.

Что дальше