<uses-permission android:name="android.permission.INTERNET" />
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
implementation 'com.github.hzhdeveloper:metamqtt:1.0.3'
}
MetaMqtt.with(this) // 上下文Context
.url("XXX") // 服务器URL
.port("XXX") // 服务器端口
.client("mqtttest") // MQTT客户端ID,默认为mqttApp,非必须,但多端不能重复,否则导致无限重连
.username("XXX") // MQTT 用户名
.password("XXX") // MQTT 密码
.topic("test") // MQTT 订阅的主题,不能为空
.timeout(10) // MQTT 超时时间,默认10S,非必须
.beat(20) // MQTT 心跳时间,默认20S,非必须
.retry(10) // MQTT 重试时间,默认10S,非必须
.callback(new MetaMqttCallBack(){})
.start(); // 开始,let's do it
MetaMqtt.with(this) // 上下文Context
.url("XXX") // 服务器URL
.port("XXX") // 服务器端口
.client("mqtttest") // MQTT客户端ID,默认为mqttApp,非必须,但多端不能重复,否则导致无限重连
.username("XXX") // MQTT 用户名
.password("XXX") // MQTT 密码
.topic("test") // MQTT 订阅的主题,不能为空
.timeout(10) // MQTT 超时时间,默认10S,非必须
.beat(20) // MQTT 心跳时间,默认20S,非必须
.retry(10) // MQTT 重试时间,默认10S,非必须
.start(); // 开始,let's do it
MetaMqtt.with(this)
.callback(new MetaMqttCallBack() {};
其中 callback 可以接收到的回调包括:连接成功、连接失败、连接丢失、收到消息、发送消息成功、重连成功、重连失败、所连接的MqttClient异常以及网络未连接回调,如果不需要这么多回调,可以直接新建CallBack回调并作为抽象类继承MetaMqttCallBack。
1.订阅的Topic主题如果要使用/ 或者 + 这两个通配符,那么 / 或者 + 的前后一定不能相同,建议这样使用:订阅的主题都为app/+或者app/#,然后发送消息时所用的主题建议为app/xxx
Copyright 2022 - 2022 hzhdeveloper
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.