finds.dev← search

// the find

eclipse-paho/paho.mqtt.android

★ 3,101 · Java · NOASSERTION · updated Aug 2024

MQTT Android

The official Eclipse Paho MQTT client library for Android, wrapping the Java MQTT client in an Android Service so connections survive Activity lifecycle changes. It's the go-to choice if you need MQTT on Android and don't want to roll your own service binding layer. Targets Android developers doing IoT or any pub/sub messaging on mobile.

Uses a bound Android Service architecture, which is the correct approach — MQTT connections need to outlive your Activity and this handles that. AlarmPingSender uses Android's AlarmManager for keepalives, which is battery-aware and survives doze mode better than a raw timer. SQLite-backed message persistence (DatabaseMessageStore) means QoS 1/2 messages survive process death. Offline buffering is built in, so you don't have to queue messages yourself when connectivity drops.

Last meaningful commit was August 2024 and the README still references SDK 24 and Travis CI — this project is in maintenance mode at best, abandoned at worst. No MQTT 5 support at all; you're stuck on 3.1/3.1.1, which means no user properties, no reason codes, no topic aliases. The Gradle setup requires pulling from Eclipse's Nexus repo and explicitly adding the mqttv3 JAR as a separate dependency — messy for modern Android projects using version catalogs. The sample app still uses the deprecated NavigationDrawer pattern with Fragments wired up manually; anyone using this as a starting point will be copying 2015-era Android code.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →