Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Paho/Android Service
Contents
- 1 Design
- 1.1 Requirement 1: automatic reconnection
- 1.2 Requirement 2: Buffering of inbound messages when app is not running
- 1.3 Requirement 3: allow Android notifications for incoming messages when app is not running
- 1.4 Requirement 4: buffering of outbound messages when the connection is not available
- 1.5 What is the application/service lifecycle?
- 2 Deployment
Design
(no implementation code please - only external design and application code!)
Requirement 1: automatic reconnection
The application does not have to reconnect itself.
Using Android notifications to recognize when the network is available again.
Requirement 2: Buffering of inbound messages when app is not running
The MQTT Android service to receive messages while the app is not running.
Questions: when are these messages delivered to the application? How does the app reestablish its connection to the service to get the messages?
Automatic reconnect can be configured, and turned off.
Requirement 3: allow Android notifications for incoming messages when app is not running
So that the user can start the application?
Requirement 4: buffering of outbound messages when the connection is not available
Can make use of this function embedded in the Java client (when it is).
What is the application/service lifecycle?
Deployment
The following are proposed "deployment" requirements for the Paho Android Service
- Nightly builds
- Available maven repository
- Works with gradle