Richtig freigeben, Android MediaPlayer

Ich versuche eine Schaltfläche hinzu, die meine android-app, wo es spielt eine MP3, wenn der button angetippt wird.
Ich habe es zu arbeiten, aber ohne eine Möglichkeit zur Freigabe des mediaPlayer-Objekts - daher ist es weiterläuft, selbst nachdem ich verlasse die Aktivität. Wenn ich initialisieren Sie die MediaPlayer-Objekt außerhalb meiner reagieren () - Methode, welche aufgerufen wird, wenn die Taste gedrückt wird) es bewirkt, dass die app zu zwingen, zu schließen, wenn die Aktivität wird geöffnet. Aber wenn ich initialisieren der MediaPlayer innerhalb der reagieren () - Methode, die ich dann nicht verwenden kann mplayer.Freisetzung in die onQuit () - Methode. Was bin ich nicht hier sehen?

    public void react(View view) {
    MediaPlayer mediaPlayer = MediaPlayer.create(ToBeOrNot.this, R.raw.achord);
    mediaPlayer.start();
}
protected void onStop(){
    mediaPlayer.release();
    mediaPlayer = null;
}

Funktioniert nicht für offensichtlichen Gründen und

MediaPlayer mediaPlayer = MediaPlayer.create(ToBeOrNot.this, R.raw.achord);
public void react(View view) {
            mediaPlayer.start(); 
}
protected void onStop(){
    mediaPlayer.release();
    mediaPlayer = null;
}

Bewirkt, dass es zu force close.

Update:
Hier ist die ganze java-Klasse.

public class ToBeOrNot extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_to_be_or_not);

        }
MediaPlayer mediaPlayer;

public void react(View view) {
        mediaPlayer = MediaPlayer.create(ToBeOrNot.this, R.raw.achord);
        mediaPlayer.start(); 
}
protected void onStop(){
    mediaPlayer.release();
    mediaPlayer = null;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    //Inflate the menu; this adds items to the action bar if it is present.
    //getMenuInflater().inflate(R.menu.activity_to_be_or_not, menu);
    //Locate MenuItem with ShareActionProvider
   return true;
}

}

Ich denke, was es tut, ist relativ selbsterklärend. Wenn Sie aufgerufen wird, zeigt es text und eine Taste, wenn angetippt, startet eine Aufnahme zu spielen. Wenn jemand trifft die zurück-Taste, es sollte gehen Sie zurück zu der vorherigen Aktivität und stoppen Sie die Aufnahme.
Vielen Dank für die Hilfe!

Wenn Ihre Frage beantwortet wurde und möchten Sie bitten, einen neuen, Sie sollten öffnen Sie eine neue Frage, die nicht einfach Bearbeiten dieses.
Okay, ich wollte einfach nicht zu viele Fragen.
Hier ist die neue Frage. stackoverflow.com/questions/15046888/... Wenn Sie Lust haben, beantworten das wäre toll, danke. Oder könnte jemand anderes, oder ich vielleicht die Antwort selbst.

InformationsquelleAutor dacelbot | 2013-02-23

Schreibe einen Kommentar