Я следую этому руководству, чтобы создать свой проект с использованием протокола MQTT:
https://wildanmsyah.wordpress.com/2017/05/11/mqtt-android-client-tutorial/
Но я хочу знать, как я могу подписаться на разные сообщения из разных тем в других текстовых представлениях. Например:
message1 из темы1 в textview1,
сообщение2 из темы2 в текстовое представление2,
сообщение3 из темы3 в текстовое представление3 ...
Я хочу создать другое текстовое представление с разными сообщениями из разных тем.
Спасибо за все! =)
В моем MQTTHelper.java:
private void subscribeToTopic() {
try {
mqttAndroidClient.subscribe(subscriptionTopic, 0, null, new IMqttActionListener() {
@Override
public void onSuccess(IMqttToken asyncActionToken) {
}
@Override
public void onFailure(IMqttToken asyncActionToken, Throwable exception) {
}
});
}
catch (MqttException ex) {
System.err.println("Exception whilst subscribing");
ex.printStackTrace();
}
try {
mqttAndroidClient.subscribe(subscriptionTopic2, 0, null, new IMqttActionListener() {
@Override
public void onSuccess(IMqttToken asyncActionToken) {
}
@Override
public void onFailure(IMqttToken asyncActionToken, Throwable exception) {
}
});
}
catch (MqttException ex) {
System.err.println("Exception whilst subscribing");
ex.printStackTrace();
}
}
В моей основной деятельности:
private void startMqtt(){
mqttHelper = new MQTTHelper(getApplicationContext());
mqttHelper.setCallback(new MqttCallback() {
@Override
public void connectionLost(Throwable cause) {
}
@Override
public void messageArrived(String topic, MqttMessage message) throws Exception {
textReceive.setText(message.toString());
}
@Override
public void deliveryComplete(IMqttDeliveryToken token) {
}
});
mqttHelper2 = new MQTTHelper(getApplicationContext());
mqttHelper2.setCallback(new MqttCallback() {
@Override
public void connectionLost(Throwable cause) {
}
@Override
public void messageArrived(String topic, MqttMessage message) throws Exception {
textReceive2.setText(message.toString());
}
@Override
public void deliveryComplete(IMqttDeliveryToken token) {
}
});
}