Pomyślnie utworzyłem niestandardowe powiadomienie rozszerzone dla systemu Android> = 3.0, które wyświetla tekst i dodatkowy przycisk. Jeśli klikniesz powiadomienie w dowolnym miejscu, ale na przycisku w menu powiadomień, powiadomienie zostanie odrzucone, lista rozwijana zostanie zamknięta, a określony cel zostanie uruchomiony zgodnie z oczekiwaniami. Po kliknięciu dedykowanego przycisku w powiadomieniu, inne działanie zostało pomyślnie uruchomione, ale rozwijane menu pozostaje otwarte (a powiadomienie nadal istnieje, ale później anuluję, to nie jest problem). Intencja uruchamia działanie, które pojawia się za menu powiadomień.Jak zamknąć menu powiadomień w Androidzie> = 3.0 od niestandardowego powiadomienia o bogatej ofercie z dodatkowym przyciskiem?
Co chcę osiągnąć, to zachować dotychczasowe zachowanie zgodnie z opisem, ale także zamknąć menu powiadomień z przycisku Intent the button - czy jest to możliwe? Alternatywnie wystarczyłoby, gdyby Aktywność z przycisku Intent zyskała ostrość okna.
Oto kod dla powiadomienia niestandardowego, czy to pomaga:
Notification.Builder builder = new Notification.Builder(main)
.setSmallIcon(R.drawable.notification)
.setAutoCancel(true)
.setTicker(text)
.setContentIntent(...);
RemoteViews layout = new RemoteViews(
main.getPackageName(), R.layout.notification);
layout.setTextViewText(R.id.title, title);
layout.setTextViewText(R.id.text, text);
Intent i = new Intent(
"snooze", null, main, Snooze.class
);
i.putExtra(KEY_WIDGET_ID, widgetId);
layout.setOnClickPendingIntent(R.id.notification_zzz, PendingIntent.getActivity(main, 0, i, PendingIntent.FLAG_UPDATE_CURRENT));
builder.setContent(layout);
...
NotificationManager nm =
(NotificationManager)main.getSystemService(Context.NOTIFICATION_SERVICE);
nm.notify(0, builder.getNotification());
Czy rozwiązałeś ten problem lub zmieniłeś projekt aplikacji? – Hunt
Dla systemu Android 3.0 do 4.0 nie znalazłem rozwiązania. Ale jak wspomniano powyżej w Androidzie 4.1 i wyżej jest wbudowany mechanizm dodatkowych działań, które również zamkną listę rozwijaną i właśnie tego używam. Więcej informacji znajdziesz tutaj: http://developer.android.com/guide/topics/ui/notifiers/notifications.html#Actions – mdiener