E/MediaPlayer的:启动名为状态64时,MPlayer(0xaf149260)使用的MediaPlayer

E/MediaPlayer的:启动名为状态64时,MPlayer(0xaf149260)使用的MediaPlayer

问题描述:

我一直在努力发挥和利用停止播放MP3文件及停止按钮,但它一直给了这个错误时:E/MediaPlayer的:启动名为状态64时,MPlayer(0xaf149260)使用的MediaPlayer

E/MediaPlayer的:开始称为在状态64,MPLAYER(0xaf149260) E/MediaPlayer的:错误(-38,0) E/MediaPlayer的:错误(-38,0)

这是我的代码到目前为止:

public class MainActivity extends AppCompatActivity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 

    final MediaPlayer mainSongMP = MediaPlayer.create(this, R.raw.main_copy); 

    Button playButton = (Button) this.findViewById(R.id.playButton); 
    Button stopButton = (Button) this.findViewById(R.id.stopButton); 

    playButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v){ 
      mainSongMP.start(); 
     } 
    }); 

    stopButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v){ 
      mainSongMP.stop(); 
     } 
    }); 

} 
} 

您应该参考MediaPlayer状态图:

MediaPlayer state diagram

呼吁停止后,您可以再直接进入启动状态。您需要再次准备MediaPlayer,或者释放它并重新开始。