Wie zählt man die Nummer der Benachrichtigung und zeigt ein einziges Icon in Android?

Ich habe mehrere Android-Benachrichtigung, aber wenn ich eine Nachricht von meinem Webserver senden, erstellt das Android-Gerät ein neues Benachrichtigungssymbol in der Statusleiste. Ich möchte die Nummer der ungelesenen Benachrichtigung zählen, sie auf der statusbar mit einem einzigen Symbol anzeigen, und wenn eine Benachrichtigung gelesen wird, muss die Benachrichtigung die Anzahl der ungelesenen Benachrichtigungsanzahl ändern. Wie kann ich es tun? Es sieht aus wie "3 Andere" in diesem Bild: Notification Icon

  • Wie installiere ich Android Lolipop in Eclipse?
  • Android Virtual Device Super langsam - PC zu langsam?
  • Android EditText nicht mehrzeilig
  • 'Fehlende contentDescription Attribut auf Bild' in XML
  • Was genau bedeutet der Anwendungskontext?
  • Android wear - eclipse: nicht erkannt unterstützen Bibliothek
  • Wie kann man zwischen den Tabs im android sdk grafischen Layout wechseln oder wechseln?
  • Leere Datei-Explorer in Eclipse DDMS
  • 3 Solutions collect form web for “Wie zählt man die Nummer der Benachrichtigung und zeigt ein einziges Icon in Android?”

    Überprüfen Sie die Antwort hier: Wie gibt man Zähler, wenn mehr als eine Benachrichtigung gibt es

    Sie müssen nur Notification.number :

     Notification notification = new Notification(R.drawable.direction, "Cool Notification", System.currentTimeMillis()); /********LIKE THIS*********/ notification.number = notificationCount++; /********LIKE THIS*********/ notification.setLatestEventInfo(context, "Cool Notification Title", "updated notificaiton message", null); NotificationManager nm = (NotificationManager) context.getSystemService(context.NOTIFICATION_SERVICE); nm.notify(R.id.my_motification, notification); 

    Sie müssen Ihre Benachrichtigung über die NotificationManager.notify Methode senden, mit der gleichen ID die ganze Zeit. Wie die Dokumentation sagt, ist die ID eine eindeutige Kennung für diese Benachrichtigung innerhalb Ihrer Anwendung. Wenn Sie die gleiche ID wiederverwenden, wird es nur den Text und die Nummer für diese Benachrichtigung aktualisieren.

    Um zu überprüfen, wann der Benutzer auf die Benachrichtigung klickt, müssen Sie einen PendingIntent angeben (siehe Tutorial ). Um zu überprüfen, wann der Benutzer die Benachrichtigungen löscht, müssen Sie den Notification.Builder verwenden , der nur im Api Level 11 verfügbar ist.

    Nun, diese Codes arbeiten für mich:

     Notification n = new Notification(R.drawable.yourownpicturehere, getString(R.string.noticeMe), System.currentTimeMillis()); PendingIntent i=PendingIntent.getActivity(this, 0, new Intent(this, NotifyActivity.class),0); n.setLatestEventInfo(getApplicationContext(), getString(R.string.title), getString(R.string.message), i); n.number=++count; n.flags |= Notification.FLAG_AUTO_CANCEL; n.flags |= Notification.DEFAULT_SOUND; n.flags |= Notification.DEFAULT_VIBRATE; n.ledARGB = 0xff0000ff; n.flags |= Notification.FLAG_SHOW_LIGHTS; // Now invoke the Notification Service String notifService = Context.NOTIFICATION_SERVICE; NotificationManager mgr = (NotificationManager) getSystemService(notifService); mgr.notify(NOTIFICATION_ID, n); 

    Folgen Sie diesem Link für ein vollständiges Tutorial.
    Ich denke die n.number=++count; Ist derjenige, der für das Zählen der Benachrichtigung verantwortlich ist

    Sie benötigen für jede Nummer eine andere Bitmap und setzen das Symbol, um die Bitmap anzuzeigen, die der Anzahl der Benachrichtigungen entspricht.

    Um die Benachrichtigungen zu verfolgen, können Sie einfach einen Zähler in SharedPreferences setzen, dazu bei jeder neuen Benachrichtigung hinzufügen und um eins reduzieren, wenn eine Benachrichtigung gelesen wird (oder auf Null, wenn Sie alle Benachrichtigungen gleichzeitig anzeigen).

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.