Wie verhindere ich, dass die derzeit spielen Klingelton?
Ich Schreibe eine app, die irgendwann feuert Erinnerungen, die spielen sollen Klingeltöne. Ich kann anfangen, den Klingelton OK, aber kann es nicht stoppen.
Ich habe einen entlassen Methode in meinem fragment, sollten aufhören, die derzeit spielen, Klingelton und schließen Sie die Aktivität, aber es funktioniert nicht richtig.
Hier ist, was es tut:
RingtoneManager ringMan = new RingtoneManager(getActivity());
ringMan.stopPreviousRingtone();
getActivity().finish();
Die Methode nicht ausgeführt werden, und die Aktivität geschlossen, aber der Klingelton einfach immer auf dem spielen. Was mache ich falsch?
InformationsquelleAutor Grisha S | 2012-12-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Grund, warum stopPreviousRingtone() ist nicht zu stoppen, der Klingelton
Fand ich, dass es nur möglich ist, halt einen Klingelton mit
RingtoneManager.stopPreviousRingtone()
nur, wenn dieRingtone
war , die von der gleichenRingtoneManager
Instanz. Eine einfache Möglichkeit, dies zu bestätigen, ist eine Aktivität mit einemRingtoneManager
und drei Schaltflächen:RingtoneManager
zu starten Klingelton.stopPreviousRingtone()
auf dieRingtoneManager
.stopPreviousRingtone()
auf die völlig andereRingtoneManager
Instanz.Nachdem Sie dies getan haben, sollten Sie feststellen, dass der Klingelton nur zu stoppen, wenn Sie die zweite Schaltfläche klicken.
Stoppen Sie einen Klingelton, wenn Sie Zugriff auf die original-Klingelton-Instanz
Wenn Sie Zugriff auf die original -
Ringtone
Beispiel, können Sie rufen Sie einfach diestop()
Methode:Stoppen Klingeltöne, wenn Sie halten eine Referenz auf das original-Klingelton wird nicht möglich
Was Sie versuchen könnten ist die Erstellung einer service die laden und spielen Sie den Klingelton, wenn es gestartet wurde, und beenden Sie den Klingelton, wenn es zerstört wurde. Hier ist ein Beispiel:
Dann können Sie starten den Klingelton im hintergrund einfach starten Sie den Dienst:
Und beenden Sie den Klingelton, nur stoppen der service:
InformationsquelleAutor lmika
Erstellen Sie eine Klasse, die sich von Service-Klasse, die demo-code ist unten angegeben
Bitte Beachten: dies ist der code-form meine College-Projekt, es ist für Start-up-Standard-Wecker mit Klingelton aus BroadcastReciever Ausweitung der Aktivität und Beenden Sie den Klingelton aus verschiedenen normalen Android-Aktivität.
Service Class code:
Code für die Aktivität der Dienst aufgerufen wird:
Tätigkeit endet oder schließen der Service:
HINWEIS: bitte beachten Sie für die Kontext-Referenz.
InformationsquelleAutor SaSiKa
Erstellen RingtoneManager Objekt -, Anwendungs-Kontext
- und Klingelton-Objekt auch erstellen, wie dies nur.
Ist es, für mich zu arbeiten.
InformationsquelleAutor Kona Suresh