0

我不知道如何在 smslib 中实现队列消息传递,我收到一条新的短信并存储在数据库表中,我做了一些逻辑然后我生成了一个新的短信,我已经归档了这种同步方式,但我不知道如何以异步方式进行?有人可以指导我或提示,我看到了文档,但我不知道如何排队,因为我正在接收和发送短信???,我需要运行这个应用程序,我希望每个用户都能得到答案,因为例如我使用方法 Service.getInstance().queueMessage(msg); 但它与 Service.getInstance.sendMessage() 的作用相同,所以我的问题是如何在 smslib 中使用队列?

有人可以指导我吗?

4

1 回答 1

3

和方法都通过您的调制解调器发送消息sendMessage()queueMessage()但有根本的区别;同步sendMessage()执行并且异步执行(正如您自己所说)。queueMessage()

这意味着sendMessage()基本上会将消息转发到调制解调器,阻止它直到消息发送,然后返回。但是,如果您使用该queueMessage()方法,它会将消息存储在队列中并“在可以时”发送它,而不会阻塞调制解调器。

要从此消息中获取发送状态(无论是否发送,任何错误等),您需要创建一个实现IOutboundMessageNotification接口的类。在那里,在process方法中,您会收到状态消息,您可以根据自己的实现来处理它。

您将服务设置为“收听”这些通知,使用Service.getInstance().setOutboundMessageNotification(outboundMessageNotification);. 如果您想使用 收听传入的消息,这同样适用IInboundMessageNotification

希望它有所帮助

-抢

于 2012-08-31T13:49:56.747 回答