2016-05-06 12 views
0

Ich baue einen Musik-Player für Android. Wenn ich im Hintergrund laufe, möchte ich den Swipe-Modus für Benachrichtigungen deaktivieren, solange Musik abgespielt wird, aber wenn der Benutzer den Musik-Swipe anhält, sollte er aktiviert sein.Benachrichtigung fortlaufend entfernen

Ich habe versucht, setOnGoing(false) von setOnGoing(true) auf Benachrichtigung Builder zu aktualisieren, wenn Musik angehalten wird, aber es scheint nicht zu funktionieren. Es ist immer noch nicht Swipe on Benachrichtigung möglich.

Notification notification = mBuilder 
       .setSmallIcon(R.drawable.play_icon) 
       .setOngoing(true) 
       .setAutoCancel(false) 
       .setPriority(PRIORITY_MAX) 
       .build(); 

auf Pausieren der Wiedergabe dieser ausgeführt wird:

Notification notif = mBuilder.setOngoing(false).build(); 
     notif.bigContentView = mRemoteViews; 
     notif.contentView = mRemoteViewsCollapsed; 

mBuilder ist Klassenstufe Notification.Builder

Das das content aktualisiert richtig, aber nicht ändert seinen laufender Zustand

Antwort

0

Versuchen Sie, Setzen Sie die Flagge

Notification notification = new Notification(R.drawable.play_icon, whatever, when); 
notification.flags = Notification.FLAG_ONGOING_EVENT; 
+0

Ich möchte, dass es "nicht mehr läuft", wenn ich die Wiedergabe pause – crysis

+0

dann warum verwenden Sie '.setOngoing (true)'? versuche, '.setOngoing (false)' zu verwenden, wenn der Media Player pausiert wird – Max

+0

Wenn ich zum ersten Mal eine Benachrichtigung erstelle, setze ich SetOnoing auf true, aber wenn der Benutzer es pausiert, möchte ich, dass es sich wie setOnGoing false verhält. Ähnlich wie es bei Google Play Music Player funktioniert – crysis

Verwandte Themen