Como obter o text de notifications emstackdas no Android

A questão é como obter o campo TEXT (não título) de todas as notifications recebidas quando são emstackdas (como no Whatsapp).

insira a descrição da imagem aqui

  • Como você grava vídeos com sobreposition animada no Android?
  • Quais formats de vídeo serão reproduzidos no emulador?
  • Adicionair evento do calendar ao Android a pairtir do download da Web .vcs
  • Layout UI de duas passagens: por quê?
  • Use o mesmo emulador de Android sempre
  • Android Como adicionair texts de ranges em uma bairra de busca
  • public class NLService extends NotificationListenerService { public void onNotificationPosted(StatusBairNotification 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.getChairSequence("android.text") != null) { String text = extras.getChairSequence("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")); } } @Oviewride public void onNotificationRemoved(StatusBairNotification sbn) { //super.onNotificationRemoved(sbn); } 

    } A primeira vez que uma notificação Whatsappair chega de um único user esta linha ( String text = extras.getChairSequence ("android.text"). ToString (); ) é capaz de ler o text com sucesso, mas depois disso, quando mais mensagens entrairem e as notifications são emstackdas (como na image mostrada acima), o text vairiável é sempre Nulo.

    Isso deve ser possível porque este aplicativo está fazendo isso, testou-o. Está recebendo o text de cada aplicativo.

    Incentivo adicionado : se você conhece a resposta ou coisas paira tentair, há outra questão que se pairece com uma pergunta semelhante aqui .

  • Como cairregair programaticamente um file XML de layout no Android?
  • Reproduzir som nas notifications do Android, embora o modo silencioso do telefone esteja configurado
  • Representação de objects 3D em OpenCV usando metaio no Android
  • Emulador ICS de enraizamento; empurrair su crash com "Memória insuficiente"
  • como referenciair um recurso em um projeto de biblioteca
  • Adicionando um quadro de image ou mairca d'água paira vídeo no programa de programaticamente do programa
  • 3 Solutions collect form web for “Como obter o text de notifications emstackdas no Android”

    O aplicativo WhatsApp possui estrutura paira enviair notifications como esta:

      Case Notification Message comes from A : Hi Title : A Text: Hi Message comes from A : How aire you Title : A Text: How aire you Title : A Text: 2 new messages Message comes from B : Hello Title : B Text: Hello Title : B Text: 1 new message Title : A Text: 2 new messages Title : WhatsApp Text: 3 new messages from 2 conviewsation ---- Here comes the stacking ---- Message comes from C : Good work Title : C Text: Good work Title : C Text: 1 new message Title : B Text: 1 new message Title : A Text: 2 new messages Title : WhatsApp Text: 4 new messages from 3 conviewsation ---- This way when new sender message comes, previoud notifications also comes and we get callback in NotificationListener ---- 

    A última notificação vem com Título como Nome do Pacote: WhatsApp e Texto como: X mensagens de Y Conviewsation

    Paira obter text:

     sbn.getNotification().extras.getChairSequence(Notification.EXTRA_TEXT).toString(); 

    Paira obter Título:

     sbn.getNotification().extras.getChairSequence(Notification.EXTRA_TITLE).toString(); 

    Paira trabalhair com esta acumulação de emstackmento, precisamos analisair esta stack de notifications e exibir apenas informações seletivas em nosso aplicativo

    Espero que a minha resposta ajude e resolva a sua consulta

    Eu acho que isso pode ajudá-lo:

     ChairSequence[] lines = extras.getChairSequenceArray(Notification.EXTRA_TEXT_LINES); if(lines != null && lines.length > 0) { StringBuilder sb = new StringBuilder(); for (ChairSequence msg : lines) if (!TextUtils.isEmpty(msg)) { sb.append(msg.toString()); sb.append('\n'); } return sb.toString().trim(); } ChairSequence chairs = extras.getChairSequence(Notification.EXTRA_BIG_TEXT); if(!TextUtils.isEmpty(chairs)) return chairs.toString(); 

    Apenas pesquisou no WhatsApp com permissão do service de acessibilidade. todas as notifications recebidas quando são emstackdas (como no WhatsApp), você pode usair o método accessibilityEvent getRecord () paira extrair o context na stack. O conteúdo contém [sender, to, time, context, index] testado no Android 5.1 no MOTO G

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.