Когда источник пуст, как показать автономное сообщение в exoplayer - PullRequest
1 голос
/ 06 ноября 2019

Мне нужно отлавливать ошибки, выдаваемые exoplayer, когда нет ввода или плохой поток. Если нет входной активности, показывающей игрока с элементами управления, ничего не отображается. когда нет входного источника hls, мне нужно показать диалоговое окно оповещения о том, что потоковая передача отключена. Как этого добиться. Пожалуйста помоги.

class playlive : AppCompatActivity() {

    private var player: SimpleExoPlayer? = null
    private var playerView: PlayerView? = null
    private var playWhenReady = true

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_playlive)
        playerView = findViewById(R.id.player_view)


        play()

    }

private fun play(){

        val trackSelector = DefaultTrackSelector()
        trackSelector.setParameters(trackSelector.buildUponParameters().setMaxVideoSizeSd())
        player = ExoPlayerFactory.newSimpleInstance(this, trackSelector)

    playerView!!.player = player
    val dataSourceFactory = DefaultHttpDataSourceFactory(Util.getUserAgent(this, "app-name"))
    val uri = Uri.parse("http://localhost:1935/live/mystream/index.m3u8")
    val hlsMediaSource = HlsMediaSource.Factory(dataSourceFactory).createMediaSource(uri)

    player!!.playWhenReady = playWhenReady
    player!!.prepare(hlsMediaSource)

}
    override fun onStop() {
        super.onStop()
        releasePlayer()

    }

    override fun onResume() {
        super.onResume()
        releasePlayer()
        resumePlayer()
    }

    override fun onDestroy() {
        super.onDestroy()
        releasePlayer()

    }

    private fun releasePlayer(){
        player?.release()
    }

    private fun resumePlayer(){
        play()
    }

    }```
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...