2017-09-27 2 views
2

Diese Frage wird vor here und here gestellt, aber ich bekomme keine Antwort von dort. Ich entwickle Anwendung, in der ich pubsub und xmpp benutze, für Android verwende ich Smack-Bibliothek. Ich möchte benutzerdefinierte Nutzdaten an den Knoten senden und benutzerdefinierte Nutzdaten empfangen, wie sie analysiert und in der Liste angezeigt werden? Jetzt kann ich Nachrichten senden und empfangen, aber es ist nur ein kleines Beispiel von documentaion. hier ist mein Beispielwie zu veröffentlichen und analysieren benutzerdefinierte Nutzlast für Pubsub Xmpp Smack-Bibliothek

String msg = "room pubsub test"; 

SimplePayload payload = new SimplePayload("message", "pubsub:test:message", "<message xmlns='pubsub:test:message'><body>" + msg + "</body></message>"); 

PayloadItem<SimplePayload> item = new PayloadItem<>(null, payload); 

node.publish(item); 

und wenn ich Artikel erhalten

node.addItemEventListener(new ItemEventListener() { 
      @Override 
      public void handlePublishedItems(ItemPublishEvent items) { 
        System.out.println("======================handlePublishedItems=============================="); 
        System.out.println(items.getItems()); 
      } 
} 

und der Ausgang i ist immer bin

[org.jivesoftware.smackx.pubsub.PayloadItem | 
Content [<item id='5E277A9C33A58'> 
<message xmlns='pubsub:test:message'> 
<body xmlns='pubsub:test:message'>room pubsub test</body>< 
/message> 
</item>]] 

i benutzerdefinierte Nutzlast wie die Zeit gesendet werden soll, an dem Nachricht gesendet wird, wer diese Nachricht usw. gesendet haben so, wie kann ich benutzerdefinierte Nutzlast senden? und wie man es analysiert und dem Benutzer zeigt?

Antwort

4

Senden individuelle Nutzlast für Zeit und Absender unten Code:

SimplePayload payload = new SimplePayload("message", "pubsub:test:message", "<message xmlns='pubsub:test:message'><body>" + textMessage + "</body><from>"+Sender+"</from><time>"+time+"</time></message>"); 

für das Parsen Sie XmlPullParser und analysieren können Antwortvariablenname mit

+0

können Sie mir Beispiel für XmlPullParser geben und analysieren Antwort Tag Namen ? – gaurang

+0

@gaurang Sie können diesen Link für das Parsen verweisen [link] https://github.com/42cc/p2psafety/blob/master/p2psafety-android/p2psafety/src/ua/p2psafety/services/XmppService.java –

+0

ok i ' Ich überprüfe und melde mich bei dir. – gaurang

Verwandte Themen