UniView

class UniView : FrameLayout, UniContract.View

Constructors

Link copied to clipboard
constructor(context: Context)
constructor(context: Context, attrs: AttributeSet?)
constructor(context: Context, attrs: AttributeSet?, defStyle: Int)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
val cueList: Flow<List<CueItem>>

Functions

Link copied to clipboard
open override fun changeColorBy(uiConfig: UiConfig?)

change color by UiConfig

Link copied to clipboard
open override fun changeControlPanel(isLive: Boolean)

change control panel

Link copied to clipboard
open override fun changePlayButtonType(viewType: UniContract.View.ViewType)

Change the icon of play/pause/replay.

Link copied to clipboard
open override fun changeSeekbarStyle(isLive: Boolean, isDVR: Boolean)

change the seekbar style

Link copied to clipboard
fun configureControlPanel(controlPanelConfig: ControlPanelConfig)
Link copied to clipboard
Link copied to clipboard
open override fun enableMenuItems(enable: Boolean)

Enable or disable menu items except for the androidx.mediarouter.app.MediaRouteButton items .

Link copied to clipboard
open override fun enablePlaybackControlsAuto(enable: Boolean)
Link copied to clipboard
fun enablePSE(enabled: Boolean)
Link copied to clipboard
Link copied to clipboard
fun getCurrentVolume(): Float
Link copied to clipboard
fun handleDialogEvent(event: PaaSHandleDialogEvent)
Link copied to clipboard
open override fun handleScreenTouch(visible: Boolean, controlPanelConfig: ControlPanelConfig)

handle screen touch to control visible of control panel.

Link copied to clipboard
open override fun handleViewVisibility(coverImageShowOrGone: Boolean)
Link copied to clipboard
open override fun initializeProgress()

Initialize Progress when player is initialized

Link copied to clipboard
open override fun isControlPanelShowing(): Boolean
Link copied to clipboard
fun isEnabledPSE(): Boolean
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open override fun onBackPressed()

Exit the player.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
fun onDestroy()
Link copied to clipboard
Link copied to clipboard
fun onPause()
Link copied to clipboard
fun onPictureInPictureModeChanged(isInPictureInPictureMode: Boolean)
Link copied to clipboard
fun onResume()
Link copied to clipboard
fun onStart()
Link copied to clipboard
fun onStop()
Link copied to clipboard
open override fun setBottomInfoResId(@LayoutRes resId: Int?): View?

Setup bottom info res id

Link copied to clipboard
fun setDialogEventListener(listener: DialogEventListener)
Link copied to clipboard
open override fun setKeepScreenOnMode(turnOn: Boolean)

Set keep screen on mode.

Link copied to clipboard
fun setPictureInPictureHandler(handler: DefaultPictureInPictureHandler)
Link copied to clipboard
open override fun setPoster(url: String?)

set poster between player and control panel

Link copied to clipboard
open override fun setResizeMode(resizeMode: ResizeMode)

Set the resize mode of the player view.

Link copied to clipboard
open override fun setSubtitleMode(mode: SubtitleMode)

Set subtitle mode

Link copied to clipboard
open override fun setSurfaceSecure(isSecure: Boolean)

Set surface secure to lock screenshot or not

Link copied to clipboard
open override fun setThumbnailEnd()
Link copied to clipboard
open override fun setThumbnailStart(currentPos: Long)
Link copied to clipboard

Attaches the player to the player view

Link copied to clipboard
open override fun setupBottomMenuItems(newItems: List<View>)

Setup the bottom menu item and the views will be resized to 24dp. The view must have id because the module will put them in ConstraintLayout.

Link copied to clipboard
fun setupControlPanel(autoKeepScreenOnEnabled: Boolean = true, defaultPanelType: PanelType = PanelType.EMBEDDED, disableControlPanel: Boolean? = null)

Set the control panel and initialize it

Link copied to clipboard
open override fun setupLandscapeFullscreenButton(enterFullscreenIconId: Int?, exitFullscreenIconId: Int?, clickListener: (isFullScreen: Boolean) -> Unit)

Setup the full screen button style and click listener.

Link copied to clipboard
open override fun setupTopMenuItems(newItems: List<View>)

Setup the top menu item and the views will be resized to 24dp. The view must have id because the module will put them in ConstraintLayout.

Link copied to clipboard
open override fun showControlPanel(shown: Boolean)

Set the visible of control panel.

Link copied to clipboard
open override fun showCoverImage(url: String)

Cover image

Link copied to clipboard
fun showInfo()
Link copied to clipboard
open override fun showLoading(visible: Boolean)

Show the loading bar.

Link copied to clipboard
open override fun showPlaybackControls(shown: Boolean)

Set the visible of control panel when disable PlaybackControlsAuto

Link copied to clipboard
Link copied to clipboard
open override fun showViewByViewType(viewType: UniContract.View.ViewType, visible: Boolean)

Show or hide a view by ViewType.

Link copied to clipboard
open override fun updateMuteIcon(muted: Boolean)

update mute icon

Link copied to clipboard
open override fun updateProgress(currentPos: Long, bufferedPos: Long, duration: Long, isOnLiveEdge: Boolean)

Update the progress bar of seeking bar.

Link copied to clipboard
open override fun updateThumbnailFrame(bitmap: Bitmap?)

Set frame of thumbnail seeking

Link copied to clipboard
open override fun updateThumbnailPosition(currentPos: Long)

Update position of view of thumbnail seeking

Link copied to clipboard
open override fun updateUI(content: Content)

Update the UI with content info, like title, schedule and channel name.