Saltar al contenido

Android

GitHub

En Android, el plugin publica una notificación de llamada entrante de alta prioridad y puede elevar una actividad de pantalla completa cuando los ajustes de plataforma y usuario lo permiten.

El manifiesto del plugin ya incluye:

<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<uses-permission android:name="android.permission.USE_FULL_SCREEN_INTENT" />

Después de la instalación, cap sync es suficiente para fusionar esa configuración en tu aplicación de host.

Llame a estos métodos durante la incorporación o antes de que dependa de la presentación de llamadas entrantes:

import { IncomingCallKit } from '@capgo/capacitor-incoming-call-kit';
await IncomingCallKit.requestPermissions();
await IncomingCallKit.requestFullScreenIntentPermission();
  • requestPermissions() pide permiso de notificación de solicitud en Android 13 y posterior.
  • requestFullScreenIntentPermission() abre la página de ajustes de Android 14 y posterior para intenciones de pantalla completa cuando sea necesario.
import { IncomingCallKit } from '@capgo/capacitor-incoming-call-kit';
await IncomingCallKit.showIncomingCall({
callId: 'call-42',
callerName: 'Ada Lovelace',
appName: 'Capgo Phone',
timeoutMs: 45_000,
android: {
channelId: 'calls',
channelName: 'Incoming Calls',
showFullScreen: true,
isHighPriority: true,
accentColor: '#0F766E',
},
});
  • channelId: identificador para el canal de notificación
  • channelName: nombre del canal visible para el usuario
  • showFullScreen: solicitar la actividad de pantalla completa
  • isHighPriority: mantener la notificación lo suficientemente disruptiva para los flujos de timbre
  • accentColor: notificación compatible con tonos de superficie
  • ringtoneUri: apuntar a un recurso de timbre de Android personalizado o URI
  • La presentación de pantalla completa es de mejor esfuerzo. Si el dispositivo o los ajustes del usuario lo bloquean, Android aún muestra la notificación de llamada entrante.
  • El manejo de tiempo límite es de mejor esfuerzo. El plugin sigue y emite timeoutMs pero su servidor debe reconciliar las llamadas perdidas en su lado. callTimedOutpero su servidor debe reconciliar las llamadas perdidas en su lado.
  • Aceptar, rechazar y finalizar acciones se emiten de nuevo a través de Capacitor escuchas para que tu aplicación pueda unirse o limpiar la sesión de llamada real.

Utilice el empuje de Android o su llamada SDK para el transporte, luego deje que este complemento maneje la última milla de la interfaz de usuario de sonido nativo. Mantenga estas responsabilidades fuera del complemento:

  • Registro y gestión de tokens de FCM
  • Ciclo de vida de la sesión de medios
  • Estado de llamada de backend
  • Retroalimentación y lógica de llamada perdida

Si está utilizando Android para planificar el comportamiento de medios y interfaces nativas, conectarlo con Usando @capgo/capacitor-kit-de-llamadas-incompletas para la capacidad nativa en Usando @capgo/capacitor-kit-de-llamadas-incompletas, Usando @capgo/capacitor-actividades-en-vivo para la capacidad nativa en Usando @capgo/capacitor-actividades-en-vivo, @capgo/capacitor-actividades-en-vivo para el detalle de implementación en @capgo/capacitor-actividades-en-vivo, Usando @capgo/capacitor-reproductor-de-video para la capacidad nativa en Usando @capgo/capacitor-reproductor-de-video, y @capgo/capacitor-reproductor-de-video para el detalle de implementación en @capgo/capacitor-reproductor-de-video.