0

我正在使用 smslib 用 java 编写一个短信桌面应用程序,我的程序需要将短信存储在数据库表中,然后将短信与另一个表进行比较,最后返回一个新短信,如何用线程实现这个过程?计时器?我需要让应用程序整天运行,程序只需要将数字与另一个表进行比较,然后返回不同的值,我有应用程序,但在某些方面,我只想知道你的方法,用户需要收到带有新号码的短信谢谢

pd 我使用 smslib 和类 readmessages 和 sendmessages。我被困在这部分,我不希望我的程序崩溃

4

1 回答 1

1

SMSLib 有两种接收消息的方式。

  • 使用Service.readMessages(). 这需要实现某种调度。例如您自己的线程或计时器任务。
  • 实现回调。这是恕我直言的首选方式。在这种情况下,图书馆关心调度和一切。您只需实现 SMSLib 将在 SMS 消息到达时调用的回调。我只需将其存储在数据库中并实现您描述的比较消息并发送回复的逻辑。

由于发送消息可能需要一些时间(有时是几秒钟),您应该异步执行此操作。此外,发送可能会失败,因此您可能必须实施重试机制。所以,使用排队。最简单的方法是使用 java.concurrency 包中的 Executors 框架。

于 2012-05-01T14:11:22.147 回答