Saltare al contenuto

Android

GitHub

Su Android, il plugin invia una notifica di chiamata in arrivo di priorità alta e può elevare un'attività a schermo intero quando le impostazioni del sistema e dell'utente lo consentono.

The plugin manifest already includes:

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

Dopo l'installazione, cap sync è sufficiente unire quella configurazione nel tuo'applicazione host.

Chiamare questi metodi durante l'acquisizione o prima di affidarsi alla presentazione della chiamata in arrivo:

import { IncomingCallKit } from '@capgo/capacitor-incoming-call-kit';
await IncomingCallKit.requestPermissions();
await IncomingCallKit.requestFullScreenIntentPermission();
  • requestPermissions() richiede il permesso di notifica su Android 13 e successive versioni.
  • requestFullScreenIntentPermission() apre la pagina di impostazioni di Android 14 e successive versioni per gli intenti a schermo intero quando necessario.
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',
},
});
  • channelIdidentificatore per il canale di notifica
  • channelNamenome del canale visibile dall'utente
  • showFullScreenrichiedere l'attività a schermo intero
  • isHighPrioritytenere la notifica sufficientemente disturbante per i flussi di squillamento
  • accentColorcompatibilità con la notifica di sfondo
  • ringtoneUripuntare a un ringtone personalizzato per Android o a una risorsa/URI
  • La presentazione a schermo intero è di tipo best-effort. Se il dispositivo o le impostazioni dell'utente bloccano, Android mostra comunque la notifica di chiamata in arrivo.
  • Il trattamento dei timeout è di massima disponibilità. Il plugin traccia e invia timeoutMs ma il tuo backend dovrebbe ancora riconciliare le chiamate perse sul suo lato. callTimedOutLe azioni di accettazione, rifiuto e fine sono inviate nuovamente attraverso gli ascoltatori __CAPGO_KEEP_0__ affinché la tua app possa unirsi o pulire la sessione di chiamata reale.
  • Accept, decline, and end actions are emitted back through Capacitor listeners so your app can join or clean up the real call session.

Use Android push or your calling SDK for transport, then let this plugin handle the last mile of native ringing UI. Keep these responsibilities outside the plugin:

  • Ciclo di vita della sessione media
  • Stato della chiamata backend
  • Logica commerciale di riprova e chiamate perse
  • Continua da Android

Timeout handling is best-effort. The plugin tracks and emits, but your backend should still reconcile missed calls on its side.

Se stai utilizzando

Android per pianificare la media e il comportamento dell'interfaccia nativa, connettilo con Usando @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-kit-chiamata-in-arrivo per la capacità nativa in Usando @capgo/capacitor-kit-chiamata-in-arrivo, Usando @capgo/capacitor-attività-viva per la capacità nativa in Usando @capgo/capacitor-attività-viva, @capgo/capacitor-attività-viva per il dettaglio di implementazione in @capgo/capacitor-attività-viva, Usando @capgo/capacitor-reproduzione-video per la capacità nativa in Usando @capgo/capacitor-reproduzione-video, e for the native capability in Using @capgo/capacitor-video-player, and @capgo/capacitor-video-player per i dettagli di implementazione in @capgo/capacitor-video-player.