2016-06-10 14 views
1

Ich habe viele Tipps und Antworten zu ähnlichen Fragen gelesen, kann es aber mit meinem Code nicht schaffen. Das ist, dass Musik im Hintergrund abgespielt wird, auch wenn Sie die App verlassen. Kannst du mir helfen, das zu beheben? Ich habe den Knopf, der angeklickt hat, startet die Musik und klickte das zweite Mal auf Pause. Dies funktioniert was ich erreichen möchte, ist Musikwiedergabe zu stoppen, wenn der Benutzer die App eather durch Klicken auf Home oder Zurück-Taste beendet.So stoppen Sie Musik, wenn der Benutzer die App verlässt

ImageButton playmusic; 

    playmusic = (ImageButton)this.findViewById(R.id.listen_button); 
    final MediaPlayer mp = MediaPlayer.create(this, R.raw.music); 
    playmusic.setOnClickListener(new OnClickListener(){ 

     public void onClick(View v) { 

       if(mp.isPlaying() == true) 
         mp.pause(); 

      else 

       mp.start(); 

     } 
     }); 
    } 

Antwort

0

Versuchen ¨Uberschreitung der Methode

@Override 
public void onPause() { 
    super.onPause(); 
    //Pause your player 
    mp.pause(); 
    //do more stuff 
} 

Beim Öffnen wieder, wenn Sie wieder onResume außer Kraft setzen zu spielen beginnen möchten:

@Override 
public void onResume() { 
    super.onResume(); 
    //Play again 
    mp.play(); 
    //do more stuff 
} 

Hoffe, es hilft

+0

Vielen Dank . Aber sollte Ihr Code meinen Code austauschen oder woanders hingehen (Ende des MainActivity-Codes? Ich finde es schwierig, den Platz zu finden, um Fehler in anderen Teilen meines Codes zu haben (Ich habe den listView in dieser Aktivität). Vielen Dank im Voraus – Pawel

+0

Sie sollten es zu Ihrer Aktivität hinzufügen, zusätzlich zu den Methoden, die Sie bereits haben, dh die Aktivität selbst überschreibt diese Funktionen Wenn Sie Strg + O eingeben, können Sie alle Methoden sehen, die Sie überschreiben können – DarkCygnus

+0

Ja am Ende ist in Ordnung fügen Sie es hinzu, so dass Sie nicht jedes Mal über es scrollen müssen – DarkCygnus

Verwandte Themen