Wie man text der Gestapelten Benachrichtigungen in Android
Die Frage ist, wie man den TEXT (nicht Titel) Bereich alle eingehenden Benachrichtigungen erhalten, wenn Sie gestapelt (wie in Whatsapp).
public class NLService extends NotificationListenerService {
public void onNotificationPosted(StatusBarNotification sbn) {
Log.v(Constants.TAG_notifs,
"------------------------- in onNotificationPosted(), Notification Text = "
+ sbn.getNotification().tickerText);
Bundle extras = sbn.getNotification().extras;
if (extras.containsKey("android.text")) {
if (extras.getCharSequence("android.text") != null) {
String text = extras.getCharSequence("android.text").toString();
Log.v(Constants.TAG_notifs,
"------------------------- in onNotificationPosted(), Bundle.text != NULL, so here it is = "
+ text);
}
}
if (extras.containsKey("android.title")) {
Log.v(Constants.TAG_notifs,
"------------------------- in onNotificationPosted(), Bundle android.title = "
+ extras.getString("android.title"));
}
}
@Override
public void onNotificationRemoved(StatusBarNotification sbn) {
//super.onNotificationRemoved(sbn);
}
}
Das erste mal, wenn Sie eine Whatsapp-Mitteilung kommt von einem einzelnen Benutzer diese Zeile (String text = " extras.getCharSequence("android.text").toString();) ist erfolgreich in der Lage zu Lesen text, aber nach, dass, wenn mehrere Nachrichten kommen und Benachrichtigungen erhalten, gestapelt (wie im Bild oben gezeigt), wird die variable text ist immer NULL.
Muss dies möglich sein, da diese app es tut, wird es getestet. Es ist immer der text zu jeder app.
Zusätzlichen Anreiz: Wenn Sie die Antwort wissen oder Dinge zu versuchen, es ist eine andere Frage, die so ähnlich aussieht Frage hier.
Du musst angemeldet sein, um einen Kommentar abzugeben.
WhatsApp-Anwendung hat die Struktur für das senden von Benachrichtigungen wie diese :
Letzte Meldung kommt mit Titel als Paket-Name : WhatsApp und Text : X Nachrichten von Y Gespräch
Get Text :
Bekommen Titel :
Arbeiten mit dieser sturcture stapeln, müssen wir analysieren diese Benachrichtigung stack und zeigen nur ausgewählte Informationen, in unserer Anwendung
Ich hoffe, meine Antwort wird Ihnen helfen und lösen Ihre Abfrage
Ich denke das kann dir helfen:
Wenn Sie arbeiten mit Android 7.0+, WhatsApp nutzt MessageStyle Erweiterten Benachrichtigungen. Hier - https://developer.android.com/training/notify-user/expanded.html#message-style
Abrufen alle 5 Nachrichten von einer Benachrichtigung wie
Hierzu:
Gleiche wie meine Antwort hier.
Nur recherchiert über WhatsApp mit Erreichbarkeit service-Berechtigung.
alle eingehenden Benachrichtigungen erhalten, wenn Sie gestapelt (wie bei Whatsapp), die Sie verwenden können, AccessibilityEvent getRecord () - Methode zum extrahieren von Rahmen im Stapel.
Inhalt enthält [sender, auf, Zeit, Kontext, index] getestet auf Android 5.1 auf MOTO G