直播时如何更改 MiniController 按钮
How to change the MiniController button if is live streaming
当我们将实时内容投射到 chromecast 时,我需要显示一个 play/stop 切换按钮而不是 play/pause 按钮,但我们在投射其他视频时仍然需要 play/pause。
我将微型控制器投射按钮设置为自定义按钮,在 onResume 中我调用了我的函数,该函数根据投射的内容绑定不同的可绘制对象。问题是,当我将视频更改为在已显示微型控制器的页面上直播(或以其他方式)时,它不会再次调用 onResume(理所当然),并且它会保留相同的按钮。我不知道我可以使用的 minicontroller 中是否还有另一个事件。我尝试使用 SessionManagerListener 和 UiController 将我的函数绑定到某些事件,但它们都有问题(我可能做错了什么,不知道)。
我的函数是:
fun checkButton() {
activity?.let {
val mCastContext = CastContext.getSharedInstance(activity!!.baseContext)
val mCastSession = mCastContext.sessionManager.currentCastSession
if (mCastSession?.remoteMediaClient?.currentItem != null) {
val drawablePlay = ContextCompat.getDrawable(it, R.drawable.cast_ic_mini_controller_play)
val drawableStop = ContextCompat.getDrawable(it, R.drawable.cast_ic_mini_controller_stop)
uiMediaController.bindImageViewToPlayPauseToggle(button, drawablePlay!!, drawableStop!!, drawableStop, ProgressBar(it), false)
}
}
}
我希望每次加载 miniController 或类似的东西时调用我的函数。
谢谢!
找到了...看起来 uiMediaController.bindImageViewToPlayPauseToggle 已经自动执行此操作,它已经具有在直播时使用停止按钮的逻辑...
当我们将实时内容投射到 chromecast 时,我需要显示一个 play/stop 切换按钮而不是 play/pause 按钮,但我们在投射其他视频时仍然需要 play/pause。
我将微型控制器投射按钮设置为自定义按钮,在 onResume 中我调用了我的函数,该函数根据投射的内容绑定不同的可绘制对象。问题是,当我将视频更改为在已显示微型控制器的页面上直播(或以其他方式)时,它不会再次调用 onResume(理所当然),并且它会保留相同的按钮。我不知道我可以使用的 minicontroller 中是否还有另一个事件。我尝试使用 SessionManagerListener 和 UiController 将我的函数绑定到某些事件,但它们都有问题(我可能做错了什么,不知道)。
我的函数是:
fun checkButton() {
activity?.let {
val mCastContext = CastContext.getSharedInstance(activity!!.baseContext)
val mCastSession = mCastContext.sessionManager.currentCastSession
if (mCastSession?.remoteMediaClient?.currentItem != null) {
val drawablePlay = ContextCompat.getDrawable(it, R.drawable.cast_ic_mini_controller_play)
val drawableStop = ContextCompat.getDrawable(it, R.drawable.cast_ic_mini_controller_stop)
uiMediaController.bindImageViewToPlayPauseToggle(button, drawablePlay!!, drawableStop!!, drawableStop, ProgressBar(it), false)
}
}
}
我希望每次加载 miniController 或类似的东西时调用我的函数。
谢谢!
找到了...看起来 uiMediaController.bindImageViewToPlayPauseToggle 已经自动执行此操作,它已经具有在直播时使用停止按钮的逻辑...