iOS
Copia un prompt di configurazione con i passaggi di installazione e la guida markdown completa per questo plugin.
Come funziona il comportamento di iOS
Sezione intitolata “Come funziona il comportamento di iOS”Su iOS, il plugin riferisce l'arrivo della chiamata a CallKit. Ciò ti consente di avere la schermata di chiamata in arrivo del sistema e azioni di chiamata standardizzate senza dover costruire la tua UI di chiamata nativa.
requestPermissions() risolve immediatamente su iOS perché CallKit stesso non richiede un dialogo di autorizzazione in esecuzione.
Esempio di base
Sezione intitolata “Esempio base”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, },});Tipi di maniglia
Sezione intitolata “Tipi di maniglia”Usa ios.handleType per controllare come CallKit formatta la maniglia:
genericper identificatori specifici dell'applicazionephoneNumberper numeri di telefono realiemailAddressper identità basate su email
Chiamate in arrivo in background
Sezione intitolata “Chiamate in arrivo in background”Questo plugin non si registra PushKit o APNs per te.
Per una suoneria di background o di stato terminato su iOS, la tua app host richiede ancora la configurazione di push nativa Apple che corrisponde alla tua strategia di trasporto:
- Abilita le notifiche push quando il tuo trasporto utilizza la consegna di push Apple.
- Abilita il modulo di background Voice over IP quando la tua app utilizza un flusso di chiamata VoIP.
- Inoltra l'evento di chiamata in arrivo alla tua app e invoca questo plugin non appena è disponibile il ponte Capacitor.
Se l'evento di suoneria esiste solo in JavaScript, avrai la migliore esperienza mentre l'app è già in esecuzione in primo piano.
I permessi del microfono e della telecamera
Sezione intitolata “I permessi del microfono e della telecamera”CallKit non sostituisce il tuo media SDK. Se la sessione di chiamata reale utilizza l'accesso al microfono o alla telecamera, i descrittori di utilizzo devono ancora essere presenti nella tua 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>Aggiungi solo le chiavi che il tuo flusso di chiamata reale richiede.
Mantieni queste responsabilità nel tuo layer di app
Sezione intitolata “Mantieni queste responsabilità nel tuo layer di app”- Registrazione di PushKit e APNs
- Autenticazione e aggiornamento del token
- Unirsi alla stanza reale o alla sessione VoIP dopo
callAccepted - Terminare o conciliare lo stato della chiamata remota quando il plugin emette
callDeclined,callEndedocallTimedOut