Le schéma suivant illustre les composants système qui interagissent avec le Dialer:
Figure 1 : Composants qui interagissent avec le clavier
-
UI du système Facette de navigation inférieure pour héberger le bouton Téléphone, qui enregistre l'intent
intent:#Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;package=com.android.car.dialer;launchFlags=0x10000000;end
. L'activité principale de l'utilisateur,TelecomActivity
, est alors lancée. -
Lanceur d'applications Gère l'ensemble de la liste des applications. Le Dialer déclare TelecomActivity avec
android.intent.category.LAUNCHER
. Si vous sélectionnez l'application Téléphone dans la liste d'applications du lanceur, TelecomActivity s'affiche. -
Widget d'accueil Dans la référence AOSP, il n'y a pas de widget Home. Les OEM peuvent envisager d'ajouter un widget d'accueil pour le clavier pour afficher l'état du téléphone connecté actuel (ainsi que d'autres informations).
-
Centre de notifications
-
Une notification prioritaire s'affiche pour les appels entrants. Lorsque l'application Téléphone
InCallServiceImpl
reçoit un appel entrant, elle publie une notification d'appel manqué dans le centre de notifications, qui affiche les détails de l'appel, tels que le numéro de téléphone ou les coordonnées du contact. L'application Téléphone affiche également deux boutons d'action, "Répondre" et "Refuser". En appuyant sur le bouton "Répondre", l'appel est répondu etInCallServiceImpl
gère l'appel actif pour afficher l'UI de l'appelant et ignorer l'HUN. Cliquez sur l'icône HUN pour afficher la page "InCall" (En ligne) en plein écran avec les boutons "Répondre" et "Refuser". -
Une notification s'affiche pour les appels manqués non lus. Cliquez sur la notification pour afficher la page "Historique des appels" et marquer les appels manqués comme lus. Appuyer sur le bouton Rappeler lance un appel et affiche l'interface utilisateur InCall du Téléphone.
-
-
Assistant Les utilisateurs peuvent demander à un assistant d'effectuer un appel qui peut afficher l'interface utilisateur de l'application Téléphone.
-
Google Maps Lorsque vous appelez un marchand depuis Google Maps, l'intent DIAL est envoyé avec des numéros de téléphone supplémentaires, ce qui lance la page du clavier pour un numérotation rapide.
-
CarInputService. Surveille la touche physique des boutons "Appeler" et "Raccrocher" sur le volant. Appuyez sur les boutons suivants:
-
Le bouton d'appel du volant en l'absence d'appel entrant envoie l'intent DIAL et affiche la page du clavier du numéroteur.
-
Lorsque vous appuyez sur le bouton d'appel du volant en cas d'appel entrant, TelecomManager répond à l'appel.
-
Lorsque vous appuyez sur le bouton de fin d'appel du volant en cas d'appel entrant, TelecomManager met fin à l'appel.
-
-
Bluetooth
-
PBAPClient. Télécharge les contacts à partir d'un téléphone et écrit dans le fournisseur de contacts. Pour chaque téléphone connecté, un compte est créé avec l'adresse MAC Bluetooth de l'appareil comme nom de compte et
com.android.bluetooth.pbapsink
(@string/pbap_account_type
défini danspackages/apps/Bluetooth
) comme type de compte. Les contacts écrits au fournisseur de contacts sont écrits avec les informations du compte et sont effacés lorsque le téléphone est déconnecté.PBAPClient
n'interagit pas directement avec le Dialer, mais écrit les contacts dans le fournisseur de contacts. L'application Téléphone lit les contacts du fournisseur de contacts. -
HfpClientConnectionService
: gère l'appel Bluetooth via le profil mains libres et signale l'appel aux services télécom.
-
-
Télécom. Le framework Android Telecom gère les appels audio et vidéo sur un appareil Android. Étant donné que l'application Téléphone est l'application par défaut, elle implémente les API
InCallService
etInCallController
lie l'implémentation InCallService du Téléphone pour gérer les appels. Pour en savoir plus, consultez les pages Créer une application de téléphone de remplacement et Devenir l'application de téléphone par défaut. -
Réglages système Le clavier de numérotation surveille la liste des appareils connectés en HFP et affiche un message d'erreur lorsqu'aucun téléphone n'est connecté au clavier de numérotation via Bluetooth. Dans la référence AOSP, le bouton "Se connecter au Bluetooth" redirige les utilisateurs vers la page des paramètres Bluetooth du système pour associer un nouvel appareil ou se connecter à un appareil associé.
-
Moteur de détection des distractions du conducteur Ce service système Android impose des restrictions d'expérience utilisateur en fonction de l'état de conduite de la voiture. Le Dialer doit exécuter toutes les restrictions d'UX liées aux distractions au volant.Pour ce faire, le Dialer doit écouter le CarUXRestrictionManager et implémenter toutes les règles. Le téléphone doit:
-
Connectez-vous à la bibliothèque Car et obtenez une instance de CarUXRestrictionManager.
-
Abonnez-vous aux mises à jour de la liste des CarUxRestrictions et implémentez-les comme indiqué dans la documentation.
-
Points particulièrement importants pour le clavier:
-
La page des paramètres est optimisée pour le véhicule. L'utilisateur ne pouvait pas accéder à la page des paramètres du clavier lorsqu'il conduisait. Lorsque l'utilisateur appuie sur le menu "Paramètres" dans la barre d'action, un écran de blocage s'affiche pour l'empêcher d'accéder aux paramètres pendant la conduite. Si la page "Paramètres" est déjà affichée, l'écran de blocage s'affiche pour arrêter l'interaction de l'utilisateur.
-
Vous ne pouvez pas accéder aux paramètres système en conduisant. Sur la page d'erreur, lorsqu'aucun appareil Bluetooth n'est connecté, un bouton "Se connecter au Bluetooth" affiche la page des paramètres Bluetooth du système. L'UXR de ce bouton est entièrement restreint. Lorsque vous conduisez, cliquer sur ce bouton affiche un message d'erreur pour indiquer à l'utilisateur de garer d'abord la voiture, puis d'effectuer l'action.
-
L'utilisateur ne peut pas démarrer le parcours d'ajout aux favoris en conduisant. Le bouton "Ajouter un favori" est désactivé.
-
-
Parcours utilisateur
Dialer Main
Les différentes pages de l'application Téléphone sont indiquées ci-dessous.
Figure 2. Page principale du Téléphone
Gestion des appels
Le flux de traitement des appels est présenté ci-dessous:
Figure 3. Gestion des appels
Notifications
Les différentes pages de notifications sont affichées ci-dessous:
Figure 4. Notifications
État de l'appel
Le flux de la page InCall est présenté ci-dessous:
Figure 5. Page InCall
Recherche
Les affichages de recherche sont les suivants:
Figure 6. Recherche
Paramètres
Les options de paramètres sont les suivantes:
Figure 7. Paramètres