2016-05-27 23 views
0

Ich habe versucht, etwas Musik im Hintergrund meines Hauptmenüs hinzuzufügen. Ich habe es endlich erreicht, indem ich extends Service verwendet habe. Jetzt habe ich ein anderes Problem:Destroy/Pause Android Service (Musik) auf HomeButton gedrückt

Wenn der Hauptknopf gedrückt wird, läuft der Service noch und spielt Musik, sie beendet nur, wenn ich es zerstöre. Ich habe versucht, mit:

@Override 
protected void onPause(){ 
super.onPause(); 
service.setAction("model.BackgroundSound"); 
stopService(service); 
} 

der gut arbeitet, aber wenn ich von meinem Hauptmenü zu meiner Charakterauswahl Aktivität wechseln, wird es pausieren. Aber ich möchte die Musik in allen Aktivitäten halten. Gibt es eine Möglichkeit, den Unterschied zu erkennen, dass die App "in der Pause" ist oder nur die Aktivität?

Antwort

0

Sie können Fragmente anstelle von Aktivitäten verwenden, und es ruft Ihre Pause() nur für die einzelne Aktivität auf.

+0

Tut mir leid, aber ich habe erst vor 1-2 Wochen begonnen, Android-Programmierung zu lernen und habe nie wirklich Fragmente benutzt. Wie kann ich Fragmente anstelle von Aktivitäten verwenden? –

+0

https://developer.android.com/guide/components/fragments.html Durch diesen Link wird es Ihnen helfen, mehr über die Fragmente zu erfahren. –

0

Wenn Sie API-Level 14 und höher verwenden, können Sie registerActivityLifecycleCallbacks() auf dem Application verwenden. Sie können überprüfen und Beispiel Verwendung in diesem SO answer.

Auf diese Weise können Sie überprüfen, ob die Aktivitäten Ihrer App sichtbar sind.