Eclipse Paho Mqtt Client是否会保留已发布的所有已发布消息,直到它们在QoS-2下被代理确认交付?

Now*_*dia 3 java android mqtt paho

默认的PAHO MQTT实现是否会保留所有正在推送的消息,直到它们的传送在QoS 2中得到明确确认?或者如果不是如何通过我们自己实现这样的?

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

har*_*llb 6

来自MqttClient 的javadoc

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

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