使用多个字符串发布消息,Pubnub & Android
Publishing messages with more than one String, Pubnub & Android
这是我通过 PubNub 频道发送一条带有一个字符串的消息的方式:
pubnub.publish().channel("my_channel").message("hello").async(new
PNCallback<PNPublishResult>() {
// ...
});
这是我在连接到频道的客户端中接收消息的方式:
@Override
public void message(PubNub pubnub, final PNMessageResult message) {
if (message.getChannel() != null) {
final JsonNode received = message.getMessage();
String received_str = received.asText();
}
// ...
}
如果我只发送一个带有消息的字符串,这很好用,但是如果我想发送和接收多个字符串,我必须做什么?
我找到了解决办法。
这个要发送:
pubnub.publish().channel("my_channel").message(Arrays.asList
("string a", "string b", "string c", "string d")).async(new
PNCallback<PNPublishResult>() {
// ...
});
这个用于接收:
@Override
public void message(PubNub pubnub, final PNMessageResult message) {
if (message.getChannel() != null) {
final JsonNode received = message.getMessage();
String string_a = received.get(0).asText();
String string_b = received.get(1).asText();
String string_c = received.get(2).asText();
String string_d = received.get(3).asText();
}
// ...
}
这是我通过 PubNub 频道发送一条带有一个字符串的消息的方式:
pubnub.publish().channel("my_channel").message("hello").async(new
PNCallback<PNPublishResult>() {
// ...
});
这是我在连接到频道的客户端中接收消息的方式:
@Override
public void message(PubNub pubnub, final PNMessageResult message) {
if (message.getChannel() != null) {
final JsonNode received = message.getMessage();
String received_str = received.asText();
}
// ...
}
如果我只发送一个带有消息的字符串,这很好用,但是如果我想发送和接收多个字符串,我必须做什么?
我找到了解决办法。
这个要发送:
pubnub.publish().channel("my_channel").message(Arrays.asList
("string a", "string b", "string c", "string d")).async(new
PNCallback<PNPublishResult>() {
// ...
});
这个用于接收:
@Override
public void message(PubNub pubnub, final PNMessageResult message) {
if (message.getChannel() != null) {
final JsonNode received = message.getMessage();
String string_a = received.get(0).asText();
String string_b = received.get(1).asText();
String string_c = received.get(2).asText();
String string_d = received.get(3).asText();
}
// ...
}