我一直在阅读本教程以了解 的基础知识Paho android Service API
,以及我阅读的文本中的一些地方,client.connect(context, callback
其中有两种方法onSuccess()
和onFailure()
如前所述,此示例中使用了同步客户端(MqttClient 与 MqttAsyncClient 相对)。这意味着请求,如连接,将阻塞并返回或抛出异常。没有轮询或读取方法从服务器获取消息,来自服务器的消息可以随时到达。该库提供回调机制来处理此行为,向客户端注册的 MqttCallback 对象中的方法将被适当地调用。MqttCallback 是一个必须由另一个类实现的接口...要启用回调功能,向客户端注册一个回调对象,这在逻辑上最符合逻辑的是在连接到服务器之前完成
在阅读了我提到的最后两行之后,我感到困惑。因为据我了解,让客户端注册到具有的回调的本质connectionLost,deliveryComplete,messageArrived
是“异步”处理服务器状态并从服务器读取。
现在,我的问题是,关于我引用的最后两行,我应该如何注册客户端以在连接到服务器本身之前从服务器读取状态?或者换句话说,“为什么“client.callback”应该在“client.connect()”之前调用?
任何人都可以澄清和解释这一点。