android mediaPlayer error (-38,0)

之前写音乐播放的时候用Mediaplayer时出现-38的error,参考博客修改成功(我是问题二),这里记录一下:
原文:http://blog.sina.com.cn/s/blog_632b619d01012991.html

出现这个错误发现在mediaPlayer.reset()后调用了mediaPlayer.getDuration()
在没有给mediaPlayer对象设置数据源之前,是不能使用getDuration等这些方法的

05-05 09:35:01.861: W/dalvikvm(1618): threadid=45: thread exiting with
uncaught exception (group=0x4001aa28) 05-05 09:35:01.861:
E/AndroidRuntime(1618): Uncaught handler: thread Thread-38 exiting due
to uncaught exception 05-05 09:35:01.861: E/AndroidRuntime(1618):
java.lang.IllegalStateException 05-05 09:35:01.861:
E/AndroidRuntime(1618): at
android.media.MediaPlayer.getCurrentPosition(Native Method) 05-05
09:35:01.861: E/AndroidRuntime(1618): at
chris.mediaPlayer.service.Mp3PlayerService$SeekBarRunnable.run(Mp3PlayerService.java:180)
05-05 09:35:01.861: E/AndroidRuntime(1618): at
java.lang.Thread.run(Thread.java:1060)

当然还有可能是其他原因因其这类错误:
http://blog.csdn.net/ranger1111/article/details/6284806

在android开发中,经常会用到MediaPlayer。

在使用MediaPlayer时,有时候会遇到:MediaPlayer(362): error (-38, 0) 类似的错误。

这时,需要检查一下在设置MediaPlayer的数据源时,使用的是那种方式:

1.在初始化MediaPlayer时,通过create方法设置数据源。则不能写MediaPlayer.prepare()方法,这时,会报错。

2.如果是使用MediaPlayer构造函数初始化MediaPlayer,然后通过setDataSource方法设置数据源时,就需要在start()之前,使用MediaPlayer.prepare()方法,对数据源进行一次编译。能够避免出现(-38,0)这种错误。

ps:如果是apk里,写好的文件。可能还需要“”chmod 777 ”修复一下权限。

安卓开发中的错误 传送中…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值