2017-10-09 3 views
1

J'ai essayé de jouer et d'arrêter un fichier mp3 en utilisant un bouton lecture et l'arrêt, mais il continue à donner cette erreur:E/MediaPlayer: start appelé à l'état 64, MPlayer (0xaf149260) lors de l'utilisation MediaPlayer

E/MediaPlayer: Début appelé à l'état 64, mPlayer (0xaf149260) E/MediaPlayer: erreur (-38, 0) E/MediaPlayer: erreur (-38,0)

Ceci est le code que I » Nous avons jusqu'à présent:

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(); 
     } 
    }); 

} 
} 

Répondre

2

Vous devriez vous référer au MediaPlayer diagramme d'état:

MediaPlayer state diagram

Après avoir appelé arrêt, vous ne pouvez pas entrer directement dans le nouveau état démarré. Vous devez soit préparer à nouveau le MediaPlayer, soit le relâcher et recommencer.