Inicializar el cliente
NexmoClient es la clase principal utilizada para interactuar con Android-Client-SDK. Antes de utilizarlo, debe inicializar el cliente proporcionando una instancia de Android Contexto clase.
En la parte superior del MainActivity definir clase client que contendrá la referencia al cliente:
private lateinit var client: NexmoClient
NOTA: Puede activar otros Logcat registro mediante logLevel() del constructor, por ejemplo, NexmoClient.Builder().logLevel(ILogger.eLogLevel.SENSITIVE).build(this)
Localice el onCreate en el método MainActivity e inicializar NexmoClient utilizando el constructor:
client = NexmoClient.Builder().build(this)
El IDE mostrará una advertencia sobre la referencia no resuelta:

Coloque el signo de intercalación sobre el texto rojo y pulse Alt + Enter para importar la referencia.
Ahora debajo del código de inicialización del cliente añada un listener de conexión para monitorizar el estado de la conexión:
client.setConnectionListener(NexmoConnectionListener { connectionStatus: ConnectionStatus, _: ConnectionStatusReason? ->
if (connectionStatus == ConnectionStatus.CONNECTED) {
getConversation()
Toast.makeText(this, "User connected", Toast.LENGTH_SHORT)
} else if (connectionStatus == ConnectionStatus.DISCONNECTED) {
Toast.makeText(this, "User disconnected", Toast.LENGTH_SHORT)
runOnUiThread {
chatContainer.visibility = View.GONE
loginContainer.visibility = View.VISIBLE
}
}
})
El listener anterior permite determinar que ese usuario ha iniciado sesión correctamente y mostrar la UI del chat.
Añadir vacío getConversation método. Lo actualizará en los siguientes pasos:
private fun getConversation() { }
Añade el código para iniciar la sesión de los usuarios en la parte inferior del archivo onCreate método. Asegúrese de sustituir ALICE_JWT y BOB_JWT con el JWT que creó en un paso anterior:
findViewById<View>(R.id.loginAsAliceButton).setOnClickListener {
findViewById<TextView>(R.id.userNameTextView).text = "Alice: "
client.login(ALICE_JWT)
runOnUiThread {
loginContainer.visibility = View.INVISIBLE
}
}
findViewById<View>(R.id.loginAsBobButton).setOnClickListener {
findViewById<TextView>(R.id.userNameTextView).text = "Bob: "
client.login(BOB_JWT)
runOnUiThread {
loginContainer.visibility = View.INVISIBLE
}
}
Finalmente en el mismo método añade el código para cerrar la sesión del usuario:
findViewById<View>(R.id.logoutButton).setOnClickListener { client.logout() }
Ejecutar Build > Make project para asegurarse de que el proyecto se está compilando.
Crear una aplicación de chat para Android
Crea una aplicación Android que permita a los usuarios enviarse mensajes entre sí utilizando el Client SDK de Android y Kotlin.