あなたが何らかのガイダンスを提供できることを願っています。mediaplayer (mp1) の「最終」インスタンスを作成し、ボタンをクリックすると mp3 ファイルが再生されます。次に、2 番目のボタンをクリックしたときにファイルを停止する必要があります。ファイルをもう一度再生しようとするまで、これは正常に機能します-何も起こりません。mp1 インスタンスは「最終」であるため、停止すると、アプリを再起動するまで完全に停止すると思います。ファイルを一時停止したくありません。停止してから、もう一度やり直したいのです。どんなアイデアでも大歓迎です。ボタン内にmp1作成を入れてみました。これは、アプリがクラッシュするまで機能していました。おそらく、複数のメディアプレーヤーの作成がデバイスのメモリをすべて使用したためでしょうか?
ありがとう!!!
// const mediaplayer
mp1 = MediaPlayer.create(getApplicationContext(), R.raw.mysound);
...
// in button 1
if (radSound1.isChecked()) {
radSound2.setChecked(false); // ...set radiobutton 2 to false
mp1.start(); // ...play the mp3 file
}
...
// in button 2
if (mp1 != null){
mp1.reset();
//mp1.setDataSource();
// mp1.prepare();
}