【错误解决】Caused by: java.lang.IllegalStateException at android.media.MediaPlayer._setDataSource

目录

1. 错误log

2. 错误原因

3. 解决方法


1. 错误log

        在Android Studio使用 Mediaplayer 播放本地音频,在第二次调用mediaPlayer.setDataSource() 时报错如下:

...
java.lang.IllegalStateException
        at android.media.MediaPlayer._setDataSource(Native Method)
        at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1337)
...

2. 错误原因

        该异常表示,当前对客户端的响应已经结束,不能在响应已经结束(或说消亡)后再向 客户端(实际上是缓冲区)输出任何内容。

3. 解决方法

        使用 reset() 可解决 java.lang.IllegalStateException 问题。

在 mediaPlayer.setDataSource(path); 之前加一句:

mediaPlayer.reset();即可

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yscc-16

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值