3

默认的 PAHO MQTT 实现是否会保留所有正在推送的消息,直到它们的交付在 QoS 2 中得到明确确认?或者如果不是,我们自己怎么可能实现呢?

更新 自 paho android 服务版本 1.1.0 以来,实现了自动重新连接和离线缓冲功能。欲了解更多信息:https ://www.eclipse.org/paho/clients/android/

4

2 回答 2

6

来自MqttClient的javadoc

默认情况下,MqttDefaultFilePersistence 用于将消息存储到文件中。如果持久性设置为 null,则消息将存储在内存中,因此如果客户端、Java 运行时或设备关闭,消息可能会丢失。

这意味着只要您正确设置路径并拥有写入本地存储的正确 Android 权限,QOS2 消息就应该被持久化,直到交付给代理(而不是最终订阅者)。

于 2015-08-05T08:02:21.700 回答
0

更新

由于 paho android 服务版本 1.1.0 实现了自动重新连接和离线缓冲。请参考:https ://www.eclipse.org/paho/clients/android/ 。

于 2016-09-02T09:27:06.213 回答