java - Start called in state 4 error in android MediaPlayer?

标签 java android android-mediaplayer

我正在开始播放服务中的在线音频流。这是开始播放的方法:

    void start1(String a){
        try{
        mp.setDataSource(a);//mp is a global MediaPlayer variable
        mp.setOnPreparedListener(this);
        mp.prepareAsync();
        mp.start();
        }catch(Exception e){
            noerror=false;
                }
  }

onPrepared() 函数:

    @Override
  public void onPrepared(MediaPlayer mp1){
        mp.start();
    }

这段代码给我错误

Start called in state 4: error(-38,0)

这段代码有什么问题?

最佳答案

删除这一行

mp.start();

来自 start1 方法,因为您已经在 onPrepared 方法中开始播放。

关于java - Start called in state 4 error in android MediaPlayer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17626037/

相关文章:

android - 俄语不能正确地进入 android

android - AudioTrack : AudioFlinger could not create track, 状态:-32

java - 在java程序中隐藏查询头

javascript - 从 Javascript 逻辑派生的 Java 代码无法正常工作

java - Java文档中的volatile变量解释

java - 如何指定Spring应该使用哪个子类

android - 如何以编程方式为 TextView 或基于 Android 的应用程序的 TableRow 添加边距?

android - 如何点击 ViewPager 中的项目

java - 媒体播放器 : how to Play in STREAM_ALARM

android - 在装有 Android 11 的小米手机上应用通知样式时的 RemoteServiceException