Interface PlayerControllerPlugin.Component

All Known Subinterfaces:
IAnalyticsSession, PlayerControllerPlugin.VisualComponent
All Known Implementing Classes:
AnalyticsSession, AnalyticsSessionProxy, ExoSubtitlesRendererPlugin.ExoSubtitleComponent, VisualComponentProxy
Enclosing interface:
PlayerControllerPlugin

public static interface PlayerControllerPlugin.Component
Implementations of this component can be used to gain controlled access to a PlayerController.

The component can use the PlayerController to add event listeners and get callbacks during the playback lifecycle.

  • Method Summary

    Modifier and Type
    Method
    Description
    id()
    Returns the class that is used to identify this component when it is registered with the player controller.
    void
    onDestroy(PlayerController playerController)
    Called when the controller is destroyed.
    void
    onOpenBundle(PlayerController playerController, Bundle bundle)
    Called when the player controller is opened with a bundle.
    void
    onOpenState(PlayerController playerController, PlayerConfig playerConfig)
    Called when the player controller is opened with a config.
  • Method Details

    • id

      @NonNull Class id()
      Returns the class that is used to identify this component when it is registered with the player controller. This is what you need to pass to PlayerController.getComponent(Class) to get the registered instance of this component.
      Returns:
      The class that identifies this component.
    • onDestroy

      void onDestroy(@NonNull PlayerController playerController)
      Called when the controller is destroyed. Implementation must use this to unregister any listeners that were attached to the controller before.
      Parameters:
      playerController - The player controller
    • onOpenBundle

      void onOpenBundle(@NonNull PlayerController playerController, @NonNull Bundle bundle)
      Called when the player controller is opened with a bundle. Implementations can use this to extract or modify bundle data.
      Parameters:
      playerController - The player controller
      bundle - The bundle
    • onOpenState

      void onOpenState(PlayerController playerController, PlayerConfig playerConfig)
      Called when the player controller is opened with a config. Implementations can use this to extract or modify config data.
      Parameters:
      playerController - The player controller
      playerConfig - The playback state