Wie erhalte ich den tatsächlichen Gruppennamen von statusBarNotification in NotificationListenerService? [Duplikat]Java

Java-Forum
Guest
 Wie erhalte ich den tatsächlichen Gruppennamen von statusBarNotification in NotificationListenerService? [Duplikat]

Post by Guest »

Ich lese Benachrichtigungen mit NotificatioListnerService, alles funktioniert gut, aber das Extrahieren eines Gruppennamens aus dem Titel ist manchmal schwierig.
Ich habe den Titel aus dem Benachrichtigungspaket mit< erhalten br />var notification = sbn?.notification
var title = NotificationCompat.getContentTitle(notification!!).toString()

oder
val title= bundle?.getCharSequence(Notification.EXTRA_TITLE).toString()

oder
von messegingStyle etc.
hat aber einen Titel wie: Gruppe (x Massagen): ~ Absender // hier ist x die Nummer
Ich spreche nur von Gruppennachrichten, persönlich kein Problem
aber der tatsächliche Gruppenname ist: Gruppe< /p>
Ich kann Gruppenname und Absender aufteilen nach : , das ist nicht der Fall Ein Problem
Das Problem ist, dass (x Nachrichten) hinzugefügt werden,
hier kann ich es mit einem Regex-Ausdruck entfernen, aber unter welcher Bedingung ich entfernen muss, kann sein, dass der Gruppenname selbst (x Nachrichten) enthält, wie z Im Titel der Benachrichtigung haben wir Folgendes erhalten: Gruppe (x Nachrichten) (x Nachrichten),
Ich möchte nur entfernen, wenn es hinzugefügt wird
Ich habe es verwendet eine Bedingung zum Entfernen
Ich habe die Nachrichtengröße in Benachrichtigung,
val messageList = bundle?.getParcelableArray(NotificationCompat.EXTRA_MESSAGES)?.size

or

val messageList = NotificationCompat.MessagingStyle.extractMessagingStyleFromNotification(fullTitlee!!)?.messages?.size
messageList?.let {
if (it > 1) {
title = removeLastMessagesFromText(title.toString())
}
}

und es funktioniert einwandfrei, da es im Allgemeinen hinzugefügt wird (x Nachrichten), wenn die Größe größer als 1 ist, in seltenen Fällen oder bei Störungen funktioniert es nicht wie erwartet. Als ich es beobachtete, sah ich: Wenn messageSize 1 ist, werden noch weitere (x Nachrichten) im Titel hinzugefügt.
Ich habe diese Bundles verglichen, aber nichts anderes gefunden.
Ich habe auch title/conversationTitle für jeden möglichen Titel erhalten Das hätte ich hinzufügen können (x Nachrichten) zusätzlich
Jetzt möchte ich den perfekten Grund erhalten, wenn (x Nachrichten) hinzugefügt werden, damit ich es einfach entfernen kann

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post