Technische Details

Das folgende Diagramm veranschaulicht die Systemkomponenten, die mit Dialer interagieren:

Komponenten, die mit Dialer interagieren

Abbildung 1. Komponenten, die mit Dialer interagieren

  • System-Benutzeroberfläche. Untere Navigationsfacette zum Hosten der Telefonschaltfläche, die die intent:#Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;package=com.android.car.dialer;launchFlags=0x10000000;end . Dadurch wird die Hauptaktivität des Benutzers, TelecomActivity gestartet.

  • App-Launcher. Verwaltet die gesamte App-Liste. Dialer deklariert TelecomActivity mit android.intent.category.LAUNCHER . Wenn Sie die Telefon-App aus der App-Liste des Launchers auswählen, wird TelecomActivity angezeigt.

  • Home-Widget. In der AOSP-Referenz gibt es kein Home-Widget. OEMs könnten darüber nachdenken, ein Home-Widget für Dialer hinzuzufügen, um den Status des aktuell verbundenen Telefons (sowie andere Informationen) anzuzeigen.

  • Nachrichtencenter

    • Bei eingehenden Anrufen wird die Heads-Up-Benachrichtigung (HUN) angezeigt. Wenn der Dialer InCallServiceImpl einen eingehenden Anruf empfängt, sendet Dialer einen HUN an das Benachrichtigungscenter, das die Anrufdetails wie Telefonnummer oder Kontaktinformationen anzeigt. Dialer zeigt außerdem zwei Aktionsschaltflächen an: Annehmen und Ablehnen. Durch Tippen auf die Schaltfläche „Antworten“ wird der Anruf angenommen und InCallServiceImpl bearbeitet den aktiven Anruf, um die Benutzeroberfläche des Dialers in der Anrufansicht anzuzeigen und den HUN zu verwerfen. Wenn Sie auf das HUN klicken, wird die InCall-Seite im Vollbildmodus mit den Schaltflächen „Annehmen“ und „Ablehnen“ angezeigt.

    • Bei ungelesenen verpassten Anrufen wird eine Benachrichtigung angezeigt. Wenn Sie auf die Benachrichtigung klicken, wird die Seite „Anrufverlauf“ angezeigt und verpasste Anrufe werden als gelesen markiert. Durch Tippen auf die Schaltfläche „Rückruf“ wird ein Anruf getätigt und die InCall-Benutzeroberfläche des Dialers angezeigt.

  • Assistent. Benutzer können einen Assistenten bitten, einen Anruf zu tätigen, der möglicherweise die Dialer InCall-Benutzeroberfläche anzeigt.

  • Google Maps. Wenn Sie einen Händler über Google Maps anrufen, wird der DIAL-Intent mit zusätzlichen Telefonnummern gesendet, wodurch die Dialpad-Seite zum schnellen Wählen aufgerufen wird.

  • CarInputService. Überwacht die physische Taste der Anruf- und Anrufbeendigungstasten am Lenkrad. Drücken Sie:

    • Wenn kein Anruf eingeht, sendet die Anruftaste am Lenkrad die DIAL-Absicht und zeigt die Dialpad-Seite von Dialer an.

    • Die Anruftaste am Lenkrad veranlasst den TelecomManager bei einem eingehenden Anruf, den Anruf entgegenzunehmen.

    • Mit der Taste „Anruf beenden“ am Lenkrad beendet der TelecomManager bei einem eingehenden Anruf den Anruf.

  • Bluetooth

    • PBAPClient. Lädt Kontakte von einem Telefon herunter und schreibt an den Kontaktanbieter. Für jedes verbundene Telefon wird ein Konto mit der Bluetooth-MAC-Adresse des Geräts als Kontonamen und com.android.bluetooth.pbapsink ( @string/pbap_account_type definiert in packages/apps/Bluetooth ) als Kontotyp erstellt. An den Kontaktanbieter geschriebene Kontakte werden mit den Kontoinformationen geschrieben und gelöscht, wenn die Verbindung zum Telefon getrennt wird. PBAPClient interagiert nicht direkt mit Dialer, sondern schreibt Kontakte an den Kontaktanbieter. Dialer liest die Kontakte vom Kontaktanbieter.

    • HfpClientConnectionService . Verwaltet den Bluetooth-Anruf über HFP und meldet den Anruf an die Telekommunikationsdienste.

  • Telekommunikation. Das Android Telecom-Framework verwaltet Audio- und Videoanrufe auf einem Android-Gerät. Da Dialer die Standard-Telefon-App ist, implementiert sie die InCallService APIs und InCallController bindet die InCallService-Implementierung des Dialers an die Verarbeitung von Anrufen. Weitere Einzelheiten finden Sie unter Erstellen einer Ersatz-Telefon-App und Zur Standard-Telefon-App werden .

  • Systemeinstellungen. Dialer überwacht die Liste der mit HFP verbundenen Geräte und zeigt eine Fehlermeldung an, wenn keine Telefone über Bluetooth mit dem Dialer verbunden sind. In der AOSP-Referenz verknüpft die Schaltfläche „Mit Bluetooth verbinden“ Benutzer mit der Seite „Bluetooth-Einstellungen“ des Systems, um ein neues Gerät zu koppeln oder eine Verbindung zu einem gekoppelten Gerät herzustellen.

  • Fahrerablenkungsmotor. Dieser Android-Systemdienst erlegt UX-Einschränkungen basierend auf dem Fahrzustand des Autos auf. Dialer muss alle UX-Fahrablenkungsbeschränkungen ausführen. Dazu muss Dialer auf den CarUXRestrictionManager hören und alle Richtlinien implementieren. Dialer muss:

    • Stellen Sie eine Verbindung zur Car- Bibliothek her und rufen Sie eine Instanz von CarUXRestrictionManager ab.

    • Abonnieren Sie Aktualisierungen in der Liste der CarUxRestrictions und implementieren Sie sie wie dokumentiert.

    • Besonders wichtig für Dialer:

      • Die Einstellungsseite ist fahrzeugoptimiert. Der Benutzer konnte während der Fahrt nicht auf die Seite „Dialer-Einstellungen“ zugreifen. Durch Tippen auf das Menü „Einstellungen“ in der Aktionsleiste wird ein Sperrbildschirm angezeigt, der den Benutzer daran hindert, während der Fahrt auf die Einstellungen zuzugreifen. Wenn die Seite „Einstellungen“ bereits angezeigt wird, wird der Blockierungsbildschirm angezeigt, um die Benutzerinteraktion zu stoppen.

      • 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. Der UXR dieser Schaltfläche ist vollständig eingeschränkt. Wenn Sie während der Fahrt auf diese Schaltfläche klicken, wird eine Fehlermeldung angezeigt, die den Benutzer darauf hinweist, zuerst das Auto zu parken und dann die Aktion auszuführen.

      • Der Benutzer kann den Vorgang zum Hinzufügen zu Favoriten während der Fahrt nicht starten. Die Schaltfläche „Favorit hinzufügen“ ist deaktiviert.

Benutzerströme

Dialer Haupt

Nachfolgend finden Sie die verschiedenen Seiten für Dialer.

Hauptseite des Dialers

Abbildung 2. Hauptseite des Dialers

Anrufbearbeitung

Der Ablauf des Anrufbearbeitungsprozesses ist unten dargestellt:

Anrufbearbeitung

Abbildung 3. Anrufbearbeitung

Benachrichtigungen

Die verschiedenen Benachrichtigungsseiten werden unten angezeigt:

Benachrichtigungen

Abbildung 4. Benachrichtigungen

InCall-Status

Der Ablauf der InCall-Seite ist unten dargestellt:

InCall-Seite

Abbildung 5. InCall-Seite

Die Suchanzeigen sind:

Suchen

Abbildung 6. Suche

Einstellungen

Die Einstellungsoptionen sind:

Einstellungen

Abbildung 7. Einstellungen