Zum Inhalt springen

Android

Auf Android postet das Plugin eine hohe Priorität für eingehende Anrufbenachrichtigungen und kann eine volle Bildschirmaktivität erheben, wenn die Plattform- und Benutzereinstellungen dies zulassen.

Der Plugin-Manifest enthält bereits:

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

Nach der Installation ist es ausreichend, diese Konfiguration in Ihre Host-App zu integrieren. cap sync ist ausreichend, diese Konfiguration in Ihre Host-App zu integrieren.

Rufen Sie diese Methoden während der Onboarding oder bevor Sie auf eingehende Anrufpräsentationen angewiesen sind:

import { IncomingCallKit } from '@capgo/capacitor-incoming-call-kit';
await IncomingCallKit.requestPermissions();
await IncomingCallKit.requestFullScreenIntentPermission();
  • requestPermissions() fordert die Benachrichtigungsbenutzereinwilligung auf Android 13 und später an.
  • requestFullScreenIntentPermission() eröffnet die Einstellungen von Android 14 und später für volle Bildschirmintents, wenn erforderlich.
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: Kennzeichner für die Benachrichtigungschannel
  • channelName: Benutzerfreundlicher Channelname
  • showFullScreen: Anfrage für die Vollbildaktivität
  • isHighPriority: Halten Sie die Benachrichtigung für Ringtöne genug störend
  • accentColor: Kompatibilität für benachbarte Benachrichtigungsoberflächen
  • ringtoneUri: Zeigen Sie auf eine benutzerdefinierte Android-Ringtöneressource oder URI
  • Die Vollbildpräsentation ist ein Bestreben. Wenn das Gerät oder die Benutzereinstellungen es blockieren, zeigt Android den eingehenden Anrufbenachrichtigung immer noch an.
  • Die Zeitüberschreitungshandhabung ist ein Bestreben. Das Plugin verfolgt timeoutMs und sendet Ereignisse callTimedOutaber Ihr Backend sollte die verpassten Anrufe auf seiner Seite nochmals abgleichen.
  • Akzeptieren, ablehnen und Beendigungshandlungen werden über die Capacitor-Listener zurück an Ihr App übermittelt, damit Ihr App sich dem echten Anruf anbinden oder den Anrufsession bereinigen kann.

Verwenden Sie für den Transport Android-Push oder Ihre SDK-Anwendung, lassen Sie dann dieses Plugin die letzte Meile der nativen Klingel-UI übernehmen. Halten Sie diese Verantwortlichkeiten außerhalb des Plugins:

  • Registrierung und Token-Management von FCM
  • Lebenszyklus der Medien-Sitzung
  • Zustand des Backend-Anrufs
  • Wiederholungs- und verpasster-Anruf-Business-Logik