Das folgende Diagramm zeigt die Systemkomponenten, die mit dem Dialer interagieren:
Abbildung 1: Komponenten, die mit der Telefon App interagieren
-
System-UI Untere Navigationsfacette für die Schaltfläche „Telefon“, über die die
intent:#Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;package=com.android.car.dialer;launchFlags=0x10000000;end
-Intent registriert wird. Dadurch wird die Hauptaktivität des Nutzers,TelecomActivity
, gestartet. -
App Launcher Verwaltet die gesamte App-Liste. Der Dialer deklariert TelecomActivity mit
android.intent.category.LAUNCHER
. Wenn Sie die Telefon-App aus der App-Liste des Launchers auswählen, wird „TelecomActivity“ angezeigt. -
Start-Widget In der AOSP-Referenz gibt es kein Startbildschirm-Widget. OEMs können ein Home-Widget für den Telefonbereich hinzufügen, um den Status des aktuell verbundenen Smartphones sowie andere Informationen anzuzeigen.
-
Benachrichtigungscenter
-
Bei eingehenden Anrufen wird eine „Heads-Up-Benachrichtigung“ (HUN) angezeigt. Wenn der Dialer
InCallServiceImpl
einen eingehenden Anruf erhält, sendet er eine HUN an das Benachrichtigungscenter, in der die Anrufdetails wie Telefonnummer oder Kontaktdaten angezeigt werden. Der Dialer zeigt außerdem zwei Aktionsschaltflächen an: „Annehmen“ und „Abweisen“. Wenn Sie auf die Schaltfläche „Annehmen“ tippen, wird der Anruf angenommen undInCallServiceImpl
verarbeitet den aktiven Anruf, um die Anrufoberfläche des Dialers anzuzeigen und die HUN zu schließen. Wenn Sie auf das HUN klicken, wird die Vollbildseite „Anruf“ mit den Schaltflächen „Annehmen“ und „Abweisen“ angezeigt. -
Es wird eine Benachrichtigung für ungelesene verpasste Anrufe angezeigt. Wenn Sie auf die Benachrichtigung klicken, wird die Seite „Anrufliste“ geöffnet und verpasste Anrufe werden als gelesen markiert. Wenn Sie auf die Schaltfläche „Rückruf“ tippen, wird ein Anruf gestartet und die Benutzeroberfläche des Anrufs im Dialer angezeigt.
-
-
Assistant Nutzer können einen Assistenten bitten, einen Anruf zu starten. Dabei wird möglicherweise die Benutzeroberfläche der Telefon App angezeigt.
-
Google Maps Wenn Sie einen Händler über Google Maps anrufen, wird die DIAL-Intent mit zusätzlichen Telefonnummern gesendet. Daraufhin wird die Dialpad-Seite für das schnelle Wählen geöffnet.
-
CarInputService. Überwacht die physische Taste der Anruf- und Beendigungsschaltflächen am Lenkrad. Drücken Sie auf:
-
Wenn Sie die Anrufschaltfläche am Lenkrad drücken, ohne dass ein Anruf eingeht, wird die DIAL-Intent gesendet und die Wähltastatur des Telefons wird angezeigt.
-
Wenn Sie bei einem eingehenden Anruf die Anrufschaltfläche am Lenkrad drücken, nimmt der TelecomManager den Anruf an.
-
Wenn Sie die Taste „Auflegen“ am Lenkrad drücken, während ein Anruf eingeht, beendet der TelecomManager den Anruf.
-
-
Bluetooth
-
PBAPClient. Lädt Kontakte von einem Smartphone herunter und schreibt sie an den Kontaktanbieter. Für jedes verbundene Smartphone wird ein Konto mit der Bluetooth-MAC-Adresse des Geräts als Kontoname und
com.android.bluetooth.pbapsink
(@string/pbap_account_type
inpackages/apps/Bluetooth
definiert) als Kontotyp erstellt. Kontakte, die an den Kontaktanbieter geschrieben werden, werden mit den Kontoinformationen geschrieben und gelöscht, wenn die Verbindung zum Smartphone getrennt wird.PBAPClient
interagiert nicht direkt mit dem Telefon, sondern schreibt Kontakte an den Kontaktanbieter. Der Dialer liest die Kontakte vom Anbieter von Kontaktdaten. -
HfpClientConnectionService
: Verwaltet den Bluetooth-Anruf über HFP und meldet den Anruf an die Telekommunikationsdienste.
-
-
Telekom. Das Android Telecom-Framework verwaltet Audio- und Videoanrufe auf einem Android-Gerät. Da die Telefon App die Standard-Telefon-App ist, implementiert sie die
InCallService
APIs.InCallController
bindet die InCallService-Implementierung der Telefon App, um Anrufe zu verarbeiten. Weitere Informationen finden Sie unter Ersetzende Telefon-App erstellen und Als Standard-Telefon-App festgelegt werden. -
Systemeinstellungen Der Dialer überwacht die Liste der über HFP verbundenen Geräte und zeigt eine Fehlermeldung an, wenn keine Smartphones über Bluetooth mit dem Dialer verbunden sind. In der AOSP-Referenz werden Nutzer über die Schaltfläche „Mit Bluetooth verbinden“ zur Seite „Bluetooth-Einstellungen“ des Systems weitergeleitet, um ein neues Gerät zu koppeln oder eine Verbindung zu einem gekoppelten Gerät herzustellen.
-
Driver Distraction Engine Dieser Android-Systemdienst schränkt die UX basierend auf dem Fahrstatus des Autos ein. Der Dialer muss alle UX-Einschränkungen für Ablenkungen beim Autofahren ausführen.Dazu muss der Dialer den CarUXRestrictionManager hören und alle Richtlinien implementieren. Für Dialer gilt Folgendes:
-
Stellen Sie eine Verbindung zur Car-Bibliothek her und rufen Sie eine Instanz von CarUXRestrictionManager ab.
-
Abonnieren Sie Updates in der Liste der CarUxRestrictions und implementieren Sie sie wie dokumentiert.
-
Für Dialer ist Folgendes besonders wichtig:
-
Die Seite „Einstellungen“ ist für das Fahrzeug optimiert. Der Nutzer konnte während der Fahrt nicht auf die Seite „Einstellungen für den Anrufer“ zugreifen. Wenn Sie in der Aktionsleiste auf das Menü „Einstellungen“ tippen, wird ein Sperrbildschirm angezeigt, der verhindert, dass der Nutzer während der Fahrt auf die Einstellungen zugreifen kann. Wenn die Seite „Einstellungen“ bereits angezeigt wird, wird der Blockierungsbildschirm eingeblendet, um die Nutzerinteraktion zu beenden.
-
Während der Fahrt kann nicht auf die Systemeinstellungen zugegriffen werden. Wenn auf der Fehlerseite keine Bluetooth-Geräte verbunden sind, wird über die Schaltfläche „Mit Bluetooth verbinden“ die Seite mit den Bluetooth-Einstellungen des Systems angezeigt. Die UXR dieser Schaltfläche ist vollständig eingeschränkt. Wenn Sie während der Fahrt auf diese Schaltfläche klicken, wird eine Fehlermeldung angezeigt, in der der Nutzer darauf hingewiesen wird, zuerst das Auto zu parken und dann die Aktion auszuführen.
-
Nutzer können während der Fahrt nicht zu den Favoriten hinzufügen. Die Schaltfläche „Favoriten hinzufügen“ ist deaktiviert.
-
-
User-Flows
Dialer Main
Unten finden Sie die verschiedenen Seiten für den Dialer.
Abbildung 2: Hauptseite des Dialers
Anrufbehandlung
Unten ist der Ablauf der Anrufweiterleitung dargestellt:
Abbildung 3: Anrufbehandlung
Benachrichtigungen
Die verschiedenen Benachrichtigungsseiten werden unten angezeigt:
Abbildung 4: Benachrichtigungen
Status während eines Anrufs
Der Ablauf der Seite „In einem Anruf“ ist unten dargestellt:
Abbildung 5: Seite während eines Anrufs
Suchen
Die Suchanzeigen sind:
Abbildung 6 Suchen
Einstellungen
Folgende Optionen sind verfügbar:
Abbildung 7. Einstellungen