In Android 7.0, la funzionalità relativa alle notifiche delle chiamate viene spostata dal servizio di sistema Telecom nella piattaforma Android all'app Telefono. In precedenza, la responsabilità di mostrare le notifiche relative alle chiamate era divisa tra Telecom e l'app Telefono predefinita, creando incoerenze nel comportamento. In Android 7.0, è Chiamata a occuparsi di gestire tutte le notifiche delle chiamate.
Comportamento in Android 6.x e versioni precedenti
Nelle release precedenti di Android, le responsabilità di Telecom e Telefono erano suddivise come descritto di seguito:
Funzionalità | Realizzato da Telecom | Completata da Telefono |
---|---|---|
Notifica di chiamata in arrivo | Sì (suoneria, vibrazione) | Sì (visualizzazione delle notifiche, ID chiamante) |
Invia a segreteria | Sì | No |
Suoneria personalizzata | Sì | No |
Notifiche di chiamata persa | Sì | No |
Indicatore di messaggio in attesa (chiamate alla segreteria) | Sì (telefonia) | No |
Notifiche della lettura della segreteria | No | Sì |
Ecco alcuni esempi di comportamenti incoerenti causati da questa suddivisione delle responsabilità:
- Telecom era responsabile dell'avvio della suoneria/del vibratore, ma il dialer era responsabile della visualizzazione della notifica di chiamata in arrivo. Se la schermata di composizione è lenta all'avvio, il suono potrebbe iniziare diversi secondi prima della visualizzazione della notifica della chiamata in arrivo.
- Telecom era responsabile della visualizzazione delle notifiche di chiamate senza risposta. Poiché le funzionalità proprietarie (come l'ID chiamante di Google) non funzionano su queste notifiche, potrebbero verificarsi incoerenze tra le notifiche di Telecom e l'interfaccia utente di Telefono (ad esempio il registro chiamate).
Comportamento in Android 7.0 e versioni successive
La funzionalità è implementata nella versione di Chiamata dell'Android Open Source Project (AOSP). Per maggiori dettagli, consulta la seguente documentazione:
- Notifiche di chiamata persa
Telecom/src/com/android/server/telecom/ui/MissedCallNotifierImpl.java
Dialer/android/dialer/calllog/MissedCallNotificationReceiver.java
Dialer/android/dialer/calllog/MissedCallNotifier.java - Riproduzione delle suonerie:
frameworks/base/telecomm/java/android/telecom/InCallService.java
Telecom/src/com/android/server/telecom/InCallController.java
Dialer/java/com/android/incallui/ringtone/
Dialer/java/com/android/incallui/StatusBarNotifier.java - Notifiche VVM
frameworks/base/telephony/java/android/telephony/TelephonyManager.java
Telephony/src/com/android/phone/PhoneInterfaceManager.java
Dialer/src/com/android/dialer/calllog/DefaultVoicemailNotifier.java
Stile di notifica per le chiamate in Android 12 o versioni successive
Per i dispositivi con Android 12 o versioni successive, per offrire un'esperienza utente coerente per le chiamate, consigliamo alle app di utilizzare lo stile di notifica
CallStyle
per le chiamate in arrivo e in corso.
Per saperne di più, consulta
Le notifiche di nuove chiamate consentono di classificare l'importanza delle chiamate in arrivo.
Implementazione
Gli implementatori dei dispositivi potrebbero dover aggiornare i componenti di telecomunicazioni/telefonia che espongono le API disponibili per l'utilizzo da parte della app Telefono predefinita.