Construir la interfaz
Para poder realizar la llamada, es necesario añadir tres elementos a la pantalla:
- A
TextViewpara mostrar el estado de la conexión - A
Buttonpara iniciar la llamada - A
Buttonpara finalizar la llamada
Abra el app/res/layout/activity_main.xml archivo. Haga clic en el botón Code en la esquina superior derecha:

Sustituya el contenido del archivo por lo siguiente:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
tools:context=".MainActivity">
<TextView
android:id="@+id/connectionStatusTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="20dp"
tools:text="Connection status"/>
<Button
android:id="@+id/startCallButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="20dp"
android:text="Start call"
android:visibility="gone"
tools:visibility="visible"/>
<Button
android:id="@+id/endCallButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="End call"
android:visibility="gone"
tools:visibility="visible"/>
</LinearLayout>
Controlarás la vista usando código, así que tienes que almacenar referencias a las vistas. Añade estas propiedades en la parte superior del MainActivity clase:
private lateinit var startCallButton: Button
private lateinit var endCallButton: Button
private lateinit var connectionStatusTextView: TextView
Ahora necesitas asignar vistas a las propiedades añadidas previamente y añadir callbacks a los botones. Añada el siguiente código al archivo onCreate método inside MainActivity (a continuación se solicita el código de los permisos):
// init views
startCallButton = findViewById(R.id.startCallButton)
endCallButton = findViewById(R.id.endCallButton)
connectionStatusTextView = findViewById(R.id.connectionStatusTextView)
startCallButton.setOnClickListener {
startCall()
}
endCallButton.setOnClickListener {
hangup()
}
Para que el código compile añade estos dos métodos vacíos en la directiva MainActivity clase:
@SuppressLint("MissingPermission")
private fun startCall() {
// TODO: update body
}
private fun hangup() {
// TODO: update body
}
Usted llenará el cuerpo de estos métodos en los siguientes pasos de este tutorial.
Construir y ejecutar
Vuelva a ejecutar el proyecto (Ctrl + R).
Observe que los botones están ocultos por defecto:

Se mostrará el estado de la conexión y el START CALL se mostrará después de iniciar la sesión del usuario.
Hacer una llamada de voz dentro de la aplicación
Realiza una llamada de voz desde una aplicación android a un teléfono utilizando el Client SDK de Android.