Android 14 ha introdotto aggiornamenti dell'API accompagnati da modifiche all'esperienza utente per il comportamento di routing dell'audio per i dispositivi Bluetooth LE Audio (LEA), inclusi gli apparecchi acustici. Queste modifiche hanno influito sul modo in cui le app VoIP gestiscono la selezione dell'output audio. Questo documento fornisce informazioni essenziali per consentire agli sviluppatori di adattare le proprie app VoIP a queste modifiche e garantire un'esperienza utente ottimale.
Modifica del comportamento in Android 14
- Inoltro di chiamate per dispositivi LEA: i dispositivi LEA sono ora attivati per impostazione predefinita sugli smartphone Pixel e su AOSP. Tuttavia, per riconoscere e selezionare attivamente i dispositivi LEA come output audio, le app devono usare le nuove API introdotte nel livello API 31.
- Inoltro agli apparecchi acustici: in precedenza, l'audio veniva sempre inoltrato agli apparecchi acustici, anche se l'utente aveva selezionato esplicitamente l'auricolare. In Android 14, gli apparecchi acustici ora vengono presentati come una delle opzioni di uscita audio disponibili e richiedono la selezione esplicita da parte dell'utente.
Motivazione della modifica
- Prima di Android 12, non esisteva un'API per utilizzare esplicitamente gli apparecchi acustici per le chiamate, pertanto l'audio veniva sempre impostato per impostazione predefinita sugli apparecchi acustici quando erano connessi.
- Ciò ha reso difficile per gli utenti passare dagli apparecchi acustici agli auricolari senza scollegare gli apparecchi acustici.
- Lo stesso problema si applica alle cuffie Bluetooth LE Audio.
Per risolvere questi problemi, Android 14 ha introdotto modifiche per offrire alle app VoIP un maggiore controllo sul routing dell'audio e garantire un comportamento coerente tra gli accessori Bluetooth.
Modifiche principali in Android 14
- API generiche per la selezione del percorso: Android 12 ha introdotto
AudioManager.setCommunicationDevice
per consentire alle app di specificare percorsi audio, inclusi apparecchi acustici e dispositivi LEA. Tuttavia, in Android 12 e 13, gli apparecchi acustici non erano visibili come dispositivi, limitando l'utilità di questa API. - Visibilità degli apparecchi acustici: in Android 14, gli apparecchi acustici sono ora visibili come dispositivi, consentendo alle app di fornire elementi dell'interfaccia utente per consentire agli utenti di selezionare l'uscita audio che preferiscono.
- Ritiro delle API: diverse API relative al routing audio sono state ritirate in Android 14. Gli sviluppatori devono eseguire la migrazione alle nuove API introdotte nel livello API 31 per gestire efficacemente la selezione dell'uscita audio.
Azioni richieste per gli sviluppatori
- Altamente consigliato: esegui la migrazione a Telecom Jetpack Library. Se possibile, migra la tua app VoIP alla raccolta di Telecom Jetpack per semplificare la gestione del routing audio.
- Utilizza
setCommunicationDevice()
o le API più recenti (elencate di seguito) se la migrazione non è fattibile.