大佬教程收集整理的这篇文章主要介绍了android – Mediaplayer错误:在状态4中启动调用,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
每次我开始我的流,我得到两个MediaPlayer错误.
在Debug标签“play”中,我点击了播放按钮.
比@L_541_2@mediaPlayer服务中的“onCreate”,执行“setAudioStreamTpe”,“setDatasource”,“prepareAsync”,然@L_801_4@onPrepared(mymediaPlayer).
OnPrepared只执行mp.start().之后记录“onPrepared”.然后,在我的服务“onCreate”结束时,会记录“onCreate @R_772_9260@ce”.
为什么有2个onPrepared?!使用mp.prepare()我没有错误.
代码:
@Override
public void onCreate() {
mp = new MediaPlayer();
mp.setOnPreparedListener(this);
prepareMediaPlayer();
onPrepared(mp);
Log.d(tag, "onCreate @R_772_9260@ce");
}
public void prepareMediaPlayer()
{
try {
mp.setAudioStreamType(Au@L_179_3@manager.STREAM_MUSIC);
Log.d(tag, "setAudiotStreamType");
mp.setDatasource(PlayerActivity.soundUrl);
Log.d(tag, "setDatasource");
mp.prepareAsync();
Log.d(tag, "prepareAsync");
}
catch (IOException E) {}
catch (IllegalArgumentexception E) {}
catch (IllegalStateException E) {}
}
@Override
public void onPrepared(MediaPlayer mp) {
mp.start();
if (Player@R_772_9260@ce.mp.isPlaying() == truE){
notification();
PlayerActivity.mpState = PlayerActivity.PLAYING;
}
Log.d(tag, "onPrepared");
}
解决方法:
你不应该打电话给预备(mp);在onCreate()中,一旦MediaPlayer准备就会调用它.
public void onCreate() {
mp = new MediaPlayer();
mp.setOnPreparedListener(this);
prepareMediaPlayer();
Log.d(tag, "onCreate @R_772_9260@ce");
}
以上是大佬教程为你收集整理的android – Mediaplayer错误:在状态4中启动调用全部内容,希望文章能够帮你解决android – Mediaplayer错误:在状态4中启动调用所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。