1

我正在使用 smack 发送聊天消息。在测试时我发现,当网络不可用时,API 不会抛出任何异常。

我的代码:

Chat chat = connection.getChatManager().createChat(
        "abc@gmail.com", new MessageListener() {

            @Override
            public void processMessage(Chat arg0, Message arg1) {
                System.out.println(arg1.getFrom() + "  says  " + arg1.getBody());

            }
        });
// I Put a break point here and deliberately disable the network.
// But the following line is not throwing the XMPPException

chat.sendMessage("smack says hi.."); /* Send the message  */

我应该添加任何侦听器来捕获异常吗?

4

1 回答 1

0

您不会收到异常,因为它是异步调用。如果您想知道连接是否已断开,则必须向 Connection 注册一个 ConnectionListener。

于 2013-04-09T16:32:26.260 回答