实现稳定可靠的消息通信:Paho MQTT Android
实现稳定可靠的消息通信:Paho MQTT Android
该项目基于java版本paho mqtt android实现,使用kotlin语言重新实现,它是一个用Kotlin编写的MQTT客户端库,旨在提供可靠的开源实现,适用于面向物联网(IoT)和机器对机器(M2M)应用的开放和标准消息传递协议。MQTT反映了设备连接的物理和成本约束,旨在在设备和应用程序之间实现高度解耦,以保持市场开放,促进可扩展的Web和企业中间件以及应用程序的快速增长。
截至本文发布时间,最新版本为4.1
项目地址为
https://github.com/hannesa2/paho.mqtt.android
旧版本paho.mqtt.android项目地址如下:
https://github.com/eclipse/paho.mqtt.android
支持特性
支持mqtt版本到3.1.1,支持tls安全传输,支持标准tcp,支持自动重连等,具体特性参考下面表格
项目引入
在项目根目录下的build.gradle中加入项目仓库地址
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
app模块目录下的build.gradle中引入项目
dependencies {
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'com.github.hannesa2:paho.mqtt.android:$latestVersion'
}
Android O 前台服务
Android >= O时,你应该将其设置为前台服务
val client = MqttAndroidClient(context, uri, clientId).apply {
setForegroundService(foregroundNotification, 3)
}
sample项目简介
basicSample
目录是基本mqtt连接使用示例,包括基本的连接、发布、订阅等
extendedSample
提供mqtt高级使用示例,在basic示例功能基础上增加了TLS、多连接及多会话管理