@IviExperimental(reasons = [])
class MediaFrontendContext(val frontendContext: FrontendContext, val panelStack: LiveData<out List<MediaTaskPanel>>, val mediaConfiguration: MediaConfiguration, val mediaService: MediaServiceApi, val panels: MediaFrontendContext.Panels, val errorCallback: ErrorCallback)

Entry point for Media related panels to communicate with their frontend and the rest of the system. Should be created by the Frontend.

All available static configuration values are accessible through frontendContext, in FrontendContext.staticConfigurationProvider.

Examples: All example apps can be found in the Android Studio project inside the TomTom Digital Cockpit SDK.

  • How to set up a custom mini player using static configuration: examples/media/miniplayer/



Base FrontendContext. Used to access IVI services.


Current stack of panels for the Frontend. Usable to determine which panels are open. The Frontend is responsible for observing this variable, to ensure panels always have access to an updated list.


The configuration of the Frontend. This includes the mapping of SourceId to panel factories, and which MediaControls to use.


Reference to the MediaServiceApi based on the MediaService IVI service interface, for ease of access.


Interface to easily open sub-panels.


Callback container to report media browsing errors to the frontend; necessary since only the frontend can best decide on how to respond to error conditions in different situations.


Link copied to clipboard
fun MediaFrontendContext(frontendContext: FrontendContext, panelStack: LiveData<out List<MediaTaskPanel>>, mediaConfiguration: MediaConfiguration, mediaService: MediaServiceApi, panels: MediaFrontendContext.Panels, errorCallback: ErrorCallback)


Link copied to clipboard
interface Panels

Interface to open Frontend sub-panels.


Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard