Radio mit Medien implementieren

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

Das Radio UI ist als eigenständige Anwendung implementiert. Anweisungen zur Integration einer Radio-UI in die Radio-Hardware finden Sie unter Implementing Radio .

Im folgenden Abschnitt wird beschrieben, wie Sie die Radio-Benutzeroberfläche mit Medien integrieren, um Benutzern ein nahtloses Erlebnis zu bieten, das es Benutzern ermöglicht, mit Medienquellen und Radio zu interagieren, als wären sie eine einzige Anwendung.

Benutzerfluss zum Wechseln der Medienquelle

Das folgende Diagramm veranschaulicht, wie die Referenzimplementierung von Radio und Medien den Benutzerablauf für die Anwendungsumschaltung implementiert.

Benutzerfluss zum Wechseln der Medienquelle

Abbildung 1. Benutzerfluss zum Wechseln der Medienquelle

Um einen nahtlosen Übergang zwischen Radio und anderen Apps in Media bereitzustellen, definiert die car-media-common Bibliothek Android-Intents, die zum Starten einer Medienquellenauswahl verwendet werden können. In AOSP ist dieser Selektor im App Launcher implementiert, der die gleiche Benutzeroberfläche zum Starten von Apps darstellt, aber gefiltert wird, um nur Medienquellen anzuzeigen.

OEMs können sich dafür entscheiden, die aktuelle App Launcher-Implementierung unverändert zu übernehmen oder eine angepasste Medienquellenauswahl zu implementieren.

Der Selektor kann in zwei Modi agieren:

  • Normaler Durchfluss. Nach Verwendung des Selektors wird die ausgewählte Quelle in Medien angezeigt, sodass der Benutzer den Inhalt durchsuchen kann.
  • Als Schalter. Ein Selektor wird verwendet, um Quellen zu wechseln, aber die Medien werden dem Benutzer nicht angezeigt. Dies gilt für das Selektor-Symbol auf der Startseite. Nach Auswahl einer Quelle wird dem Benutzer der neueste vorherige Bildschirm angezeigt (in diesem Fall die Startseite).

Die Absicht, die zum Wechseln zwischen Medienquellen verwendet wird, kann von der MediaSource#getSourceSelectorIntent() -Methode abgerufen werden, die einen booleschen popup -Wert akzeptiert, der eine Absicht zurückgibt, jeden der oben beschriebenen Flüsse zu starten.

Die eigentlichen Absichten sind unter packages/apps/Car/libs/car-media-common/res/values/config.xml . Um diese Konfiguration anzupassen, verwenden Sie Build-Time-Overlays.

Ersetzen der Radio-App

Da die Radio-App Media Browse und Media Session implementiert, wird Radio im App Launcher angezeigt. Um zu verhindern, dass Medien gestartet werden, wenn ein Benutzer auf das Symbol klickt, sind zwei Elemente erforderlich. Radio muss :

  • Führen Sie eine Launcher- Aktivität durch.
  • Als benutzerdefinierte Quelle deklariert werden. Fügen Sie dazu den Komponentennamen zum Schlüssel custom_media_packages in car-media-common/res/values/config.xml .

UX-Fahrbeschränkungen

Medien müssen alle Ablenkungsbeschränkungen beim UX-Fahren beachten. Dazu muss Media auf den CarUXRestrictionManager hören und alle seine Richtlinien implementieren.