The MQTT Android Service is an MQTT client library written in Kotlin. It has been created to provide reliable open-source implementations of open and standard messaging protocols aimed at new, existing, and emerging applications for Machine-to-Machine (M2M) and Internet of Things (IoT). MQTT reflects the inherent physical and cost constraints of device connectivity. Its objectives include effective levels of decoupling between devices and applications, designed to keep markets open and encourage the rapid growth of scalable Web and Enterprise middleware and applications.
MQTT 3.1 | ✔️ | Automatic Reconnect | ✔️ | |
MQTT 3.1.1 | ✔️ | Offline Buffering | ✔️ | |
LWT | ✔️ | WebSocket Support | ✔️ | |
SSL / TLS | ✔️ | Standard TCP Support | ✔️ | |
Message Persistence | ✔️ |
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'com.github.hannesa2:paho.mqtt.android:$latestVersion'
}
Android >= O you should use it as foreground service
val client = MqttAndroidClient(context, uri, clientId).apply {
setForegroundService(foregroundNotification, 3)
}
Copyright 2021
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.