首先,确保在AndroidManifest.xml文件中添加了以下权限:
然后,如果仍然无法正常工作,尝试在build.gradle文件中添加以下依赖项:
implementation 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.2'
最后,确保正确设置连接和发布订阅消息的代码。以下是一个简单的示例:
String serverUri = "tcp://io.adafruit.com:1883";
String clientId = "clientId";
String username = "username";
String password = "password";
MqttAsyncClient mqttClient = new MqttAsyncClient(serverUri, clientId);
MqttConnectOptions mqttConnectOptions = new MqttConnectOptions();
mqttConnectOptions.setUserName(username);
mqttConnectOptions.setPassword(password.toCharArray());
IMqttToken mqttToken = mqttClient.connect(mqttConnectOptions);
mqttToken.waitForCompletion();
String topic = "username/feeds/topic";
String payload = "Hello, Adafruit MQTT!";
MqttMessage mqttMessage = new MqttMessage(payload.getBytes());
mqttClient.publish(topic, mqttMessage);
请注意,此示例中的用户名,密码和主题都需要替换为您自己的值。如果仍然有问题,请确保您已经安装了正确的SSL证书,并根据需要进行其他调试。