为了账号安全,请及时绑定邮箱和手机立即绑定

Firebae 与 mediaplayer.setDataSource() 给出了一个错误

Firebae 与 mediaplayer.setDataSource() 给出了一个错误

手掌心 2021-11-03 15:04:14
我正在尝试从 firebase 获取 url 并将其提供给 mediaplayer.setDataSource 但我收到一个错误说:-`    java.lang.IllegalStateException                      at android.media.MediaPlayer._setDataSource(Native Method)                      at android.media.MediaPlayer.setDataSource(MediaPlayer.java:991)                      at android.media.MediaPlayer.setDataSource(MediaPlayer.java:944)                      at mks.master.musest.home$onCreateView$16$1$1.onDataChange(home.kt:425)                      at com.firebase.client.core.ValueEventRegistration.fireEvent(ValueEventRegistration.java:45)                      at com.firebase.client.core.view.DataEvent.fire(DataEvent.java:45)这是我的代码:-`var mediaplayer:MediaPlayeria                mediaplayer=MediaPlayer()                firebase= Firebase(link+"song2song")                firebase.addValueEventListener(object:ValueEventListener{                    override fun onCancelled(p0: FirebaseError?) {                    }                    override fun onDataChange(p0: DataSnapshot) {                        mediaplayer.setDataSource(p0.getValue(String()::class.java))                        mediaplayer.prepareAsync()                    }                })`主要错误在这部分 mediaplayer.setDataSource(p0.getValue(String()::class.java))
查看完整描述

1 回答

?
料青山看我应如是

TA贡献1772条经验 获得超8个赞

你应该在打电话reset()之前先打电话setDataSource()

看看下面Android参考中的状态图,它让你清楚地看到了不同的状态MediaPlayer

同时此表显示,setDataSource()只能从空闲状态来执行。


查看完整回答
反对 回复 2021-11-03
  • 1 回答
  • 0 关注
  • 221 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信