Integra il framework Android Telecom utilizzando la libreria Jetpack Core-Telecom per assicurarti che le chiamate Voice over IP (VoIP) siano trattate come una funzionalità di base dal sistema operativo, al pari delle chiamate tradizionali basate su SIM. Questa integrazione unifica la gestione delle chiamate, migliora la gestione dell'audio e consente la compatibilità con dispositivi remoti come cuffie e smartwatch.
Implementazione richiesta
Per essere idonea all'AEP, la tua app deve rispettare i seguenti requisiti:
- Registrazione delle chiamate: tutte le chiamate VoIP in entrata e in uscita devono essere registrate con il framework Telecom utilizzando l'API CallsManager#addCall.
- Gestione dello stato: utilizza CallControlScope e altri costrutti della libreria per riflettere e gestire con precisione il ciclo di vita dello stato della chiamata, inclusi gli stati di composizione, squillo, attivo, in attesa e disconnesso.
- Gestione dell'audio: non utilizzare direttamente le API Audio o Bluetooth per gestire la priorità audio e il routing; affidati invece al framework Telecom per gestire gli scenari di chiamate simultanee e le modifiche dei dispositivi audio.
- Notifiche: utilizza l'API callStyle per visualizzare notifiche in stile chiamata coerenti con il sistema Android.
- Ciclo di vita del servizio in primo piano: gestisci il ciclo di vita di tutti i servizi in primo piano necessari per la chiamata in conformità con le best practice e le limitazioni di Android.
- Integrazione della superficie remota: sincronizza lo stato e i controlli delle chiamate con le superfici remote connesse, come cuffie Bluetooth, dispositivi Wear OS e Android Auto.
- Scenari di chiamate multiple: gestisce correttamente le interazioni con altre chiamate, ad esempio chiamate SIM in entrata o chiamate da altre applicazioni VoIP, garantendo un comportamento audio e un'esperienza utente prevedibili.
Applicabilità delle linee guida
Queste linee guida si applicano a:
- App che forniscono funzionalità di chiamata Voice over IP (VoIP).
- Tutti i fattori di forma su cui è disponibile l'app.
Esenzioni
Per queste linee guida si applicano le seguenti esenzioni:
- App che non sono tecnicamente in grado di accettare le dipendenze AndroidX a causa di barriere tecniche quali:
- Conflitti di dipendenze SDK
- Vincoli di Android Open Source Project (AOSP)
- Restrizioni del sistema di compilazione del produttore di apparecchiature originali (OEM)
- Potrebbero essere concesse esenzioni temporanee per le app che riscontrano problemi significativi della piattaforma o della libreria che impediscono una migrazione stabile, a condizione che esista una tempistica chiara per la risoluzione e che il problema sia stato accettato da Google.
- Le app possono utilizzare un framework alternativo equivalente che fornisca qualità, funzionalità utente, stabilità e compatibilità simili nell'ecosistema. Contatta l'assistenza se hai un framework adatto da prendere in considerazione.
Documentazione e risorse delle funzionalità
Le seguenti risorse forniscono indicazioni sull'implementazione e dettagli tecnici sul framework Android Telecom. Queste risorse sono solo di riferimento e non contengono requisiti di programma aggiuntivi.
- Creare un'app di chiamate
- Panoramica del framework Telecom
- Integrazione del registro chiamate
- Aggiungere la visibilità nativa all'esperienza della tua app VoIP