Android Feste Benachrichtigung?

bruce85

Bekanntes Mitglied
Hallo,
wie kann ich bei meiner App eine Feste Benachrichtigung anzeigen, die man nicht unter Benachrichtigung löschen kann?
Also die Leiste, die man von oben, runter zieht?

Bei der Benachrichtigung möchte ich zusätzlich noch einen ToggleButton anzeigen lassen, wie könnte ich das ambesten lösen?

Edit: Ich hab das so versucht:
Java:
Intent intent = new Intent(this, NotificationReceiverActivity.class);
	    PendingIntent pIntent = PendingIntent.getActivity(this, 0, intent, 0);

	    Notification noti = new Notification.Builder(this)
	        .setContentTitle("Test")
	        .setContentText("Test").setSmallIcon(R.drawable.ic_launcher)
	        .setContentIntent(pIntent)
	        .addAction(R.drawable.ic_launcher, "Ein", pIntent)
	        .addAction(R.drawable.ic_launcher, "Aus", pIntent).build();
	    NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
	    // hide the notification after its selected
	    noti.flags |= Notification.FLAG_NO_CLEAR;
	    notificationManager.notify(0, noti);
Das funktioniert, nur wie kann ich dort, wo Ein und Aus steht, ein ToggleButton anzeigen lassen?

Ich bedanke mich schonmal für die Hilfe.

MfG
 
Zuletzt bearbeitet:

dzim

Top Contributor
Ich hab mal kurz gegoogled und wenn ich (mal wieder) Lars Vogels Tutorial (Android Notifications - Tutorial), sowie den folgenden StackOverflow-Artikel (android pendingintent - How to use Actions from Notification without starting Activity - Stack Overflow) richtig verstehe, dann musst du im PendingIntent nicht notwendigerweise eine Activity öffnen. Verwende also für den Intent nicht das übliche [c]
new Intent(<calling-context>, <target-Activity-class>);[/c] sondern [c]new Intent(<action-String>);[/c] und wrappe das in dein PendingIntent via [c]PendingIntent.getBroadcast(<calling-context>, <request-code(0)>, <the-previously-created-Intent>, <flags(0)>);[/c].
Dann brauchst du nur noch einen BroadcastReceiver, der die entsprechende Action bedient und schon kann's los gehen.
 

Ähnliche Java Themen

Neue Themen


Oben