Zum Inhalt springen

iOS

GitHub

Auf iOS meldet das Plugin den eingehenden Anruf bei CallKit. Dadurch erhalten Sie das Systemeingehungsanrufblatt und standardisierte Anrufaktionen ohne, dass Sie Ihre eigene native Eingehungsanruf-UI erstellen müssen.

requestPermissions() wird auf iOS sofort gelöst, weil CallKit selbst keine Laufzeitberechtigungsanfrage anzeigt.

import { IncomingCallKit } from '@capgo/capacitor-incoming-call-kit';
await IncomingCallKit.showIncomingCall({
callId: 'call-42',
callerName: 'Ada Lovelace',
handle: '+1 555 010 020',
ios: {
handleType: 'phoneNumber',
supportsHolding: true,
supportsDTMF: false,
},
});

Verwenden Sie ios.handleType um zu steuern, wie CallKit den Handle formatiert:

  • generic für Anwendungs-spezifische Identifikatoren
  • phoneNumber für echte Telefonnummern
  • emailAddress für E-Mail-basierte Identitäten

Dieses Plugin registriert PushKit oder APNs nicht für Sie.

Für echte Hintergrund- oder beendete Zustandsklingeln auf iOS benötigt Ihre Host-App immer noch die native Apple-Push-Einrichtung, die Ihrem Transport-Strategie entspricht:

  1. Wenn Ihr Transport Apple-Push-Lieferung verwendet, aktivieren Sie Push-Benachrichtigungen.
  2. Wenn Ihre App eine VoIP-Push-Fluss verwendet, aktivieren Sie die Voice-over-IP-Hintergrundmodus.
  3. Stellen Sie den eingehenden Anruferevent in Ihrer App bereit und rufen Sie dieses Plugin so schnell wie möglich auf, sobald die Capacitor-Brücke verfügbar ist.

Wenn Ihr Klingelereignis nur in JavaScript existiert, erhalten Sie die beste Erfahrung, während die App bereits im Vordergrund läuft.

CallKit ersetzt nicht Ihre Medien SDK. Wenn die echte Anrufssitzung Zugriff auf Mikrofon oder Kamera benötigt, gehören diese Nutzungsbeschreibungen immer noch zu Ihrer App:

<key>NSMicrophoneUsageDescription</key>
<string>This app uses the microphone for calls.</string>
<key>NSCameraUsageDescription</key>
<string>This app uses the camera for video calls.</string>

Fügen Sie nur die Schlüssel hinzu, die Ihre echte Rufablauf benötigt.

  • PushKit- und APNs-Registrierung
  • Authentifizierung und Token-Refresh
  • Beitreten Sie nach dem Joinen der echten Raum oder VoIP-Sitzung nach callAccepted
  • Beenden oder die Fernruf-Statusrekonstruktion, wenn der Plugin ausgibt callDeclined, callEnded, oder callTimedOut

If Sie native Plugins verwenden IOS um native Plugin-Arbeit zu planen, verbinden Sie es mit Mit @capgo/capacitor-eingehende-Anruf-Kit Für die native Fähigkeit in Mit @capgo/capacitor-eingehende-Anruf-Kit Capgo Plugin-Verzeichnis Für den Produktworkflow in Capgo Plugin-Verzeichnis Capacitor Plugins von Capgo Für die Implementierungsdetails in Capacitor Plugins von Capgo Hinzufügen oder Aktualisieren von Plugins Für die Implementierungsdetails in Hinzufügen oder Aktualisieren von Plugins, und Ionische Enterprise-Plugin-Alternativen für das Produktworkflow in Ionic Enterprise Plugin Alternativen.