Kotlin

Vistas del SDK del host en AndroidView

Vonage convierte en normal Vistas. Crear uno FrameLayout por ranura de abonado en AndroidViewexpóngalo con onSubscriberContainerReady(index, …)y adjuntar subscriber.view de su código de sesión cuando se llene esa ranura.

La muestra lo envuelve todo en BoxColumn: LazyVerticalGrid (ponderado para que llene el espacio por encima de la barra) + ControlsRow abajo; el editor es un segundo AndroidView en el Box, align(BottomEnd) para picture-in-picture. Cada fila de la cuadrícula utiliza SubscriberCellque también utiliza AndroidView + FrameLayout para el vídeo de esa tragaperras.

Baldosas remotas - dos columnas, un elemento componible por índice de ranura (coincide con maxSubscribers y sus matrices de abonados).

LazyVerticalGrid(
    modifier = Modifier.weight(1f),
    columns = GridCells.Fixed(2),
    verticalArrangement = Arrangement.spacedBy(12.dp),
    horizontalArrangement = Arrangement.spacedBy(12.dp),
    userScrollEnabled = false,
) {
    items(items = (0 until maxSubscribers).toList(), key = { it }) { index ->
        SubscriberCell(
            modifier = Modifier
                .fillMaxWidth()
                .aspectRatio(1f),
            visible = subscriberVisible.getOrNull(index) == true,
            audioEnabled = subscriberAudioEnabled.getOrNull(index) != false,
            onAudioChanged = { onSubscriberAudioChanged(index, it) },
            onContainerReady = { onSubscriberContainerReady(index, it) },
        )
    }
}

Avance local - mismo patrón: FrameLayout de factorypasado a onPublisherContainerReady.

AndroidView(
    modifier = Modifier
        .align(Alignment.BottomEnd)
        .padding(12.dp)
        .size(width = 150.dp, height = 200.dp)
        .background(Color.Black),
    factory = {
        FrameLayout(it).also(onPublisherContainerReady)
    }
)

Disposición completa: SimpleMultipartyScreen.kt.

Multipartito simple

Aprende a usar el SDK para Android de Vonage para una llamada multipartita. La aplicación publica audio/video desde un dispositivo y puede conectarse a múltiples suscriptores.

Disponible en:
Kotlin
Pasos
1
Introducción
2
Primeros pasos
3
Crear un nuevo proyecto
4
Añadir el SDK de Android
5
Configuración de la autenticación
6
Solicitud de permisos
7
Conéctate publica y muéstrate
8
Suscripción multipartita a cada flujo remoto
9
Alojar vistas SDK en AndroidView
10
Ejecutar la aplicación
11
Conclusión