CoreSystemUiViewModel

class CoreSystemUiViewModel : LifecycleViewModel, IviInstanceIdProvider

The base class for a system UI's view model, containing the system UI's state for a specific IVI instance referenced by iviInstanceId. Implementations of this class typically facilitate a specific SystemUiHost, and are intended to be created and owned by that SystemUiHost.

Parameters

applicationContext

The Android application that hosts the view model.

iviInstanceId

The ID for the IVI instance that this system UI instance operates in.

iviServiceProvider

The IviServiceProvider that is bound to the given iviInstanceId. The IviServiceProvider can provide IVI service API instances that are bound to the given IviInstanceId, and global IVI service API instances.

staticConfigurationProvider

Allows retrieving the values of static configurations.

frontendMetadata

The metadata for the Frontends that the system UI should manage.

supportedPanelTypes

The panel types that the system UI is able to present to the user.

Properties

Link copied to clipboard
Link copied to clipboard
open override val iviInstanceId: IviInstanceId
Link copied to clipboard

Whether the splash screen is dismissed.

Inherited properties

Link copied to clipboard
override val lifecycle: Lifecycle

Inherited functions

Link copied to clipboard
Link copied to clipboard
@IviExperimental(reasons = [])
fun LifecycleViewModel.createDefaultFrontendCoordinator(coreSystemUiViewModel: CoreSystemUiViewModel, createAfterStartupFrontendsTrigger: Flow<Boolean>): FrontendCoordinator<IviPanelRegistry>

Creates the default FrontendCoordinator.

Link copied to clipboard
@IviExperimental(reasons = [])
fun LifecycleViewModel.createDefaultFrontendCoordinatorContext(coreSystemUiViewModel: CoreSystemUiViewModel, createAfterStartupFrontendsTrigger: Flow<Boolean>): FrontendCoordinatorContext<IviPanelRegistry>

Creates the default FrontendCoordinatorContext that uses the IviPanelRegistry and the DefaultFrontendCoordinationRules, and uses the FrontendCoordinator static configuration for the createAfterStartupFrontendsTimeout.

Link copied to clipboard
@IviExperimental(reasons = [])
fun <PR : PanelRegistry> LifecycleViewModel.createFrontendCoordinatorContext(coreSystemUiViewModel: CoreSystemUiViewModel, createAfterStartupFrontendsTrigger: Flow<Boolean>, panelRegistryFactory: PanelRegistryFactory<PR>, frontendCoordinationRulesFactory: FrontendCoordinationRulesFactory<PR>): FrontendCoordinatorContext<PR>

Creates a FrontendCoordinatorContext that uses the PR and the DefaultFrontendCoordinationRules, and uses the FrontendCoordinator static configuration for the createAfterStartupFrontendsTimeout.