0

我有一个 android 应用程序,我目前正在使用 AsyncTask 来监控 android SMS database/provider(“content://sms”)。每当启动主要活动时都会运行
此程序。AsyncTask

现在,我希望能够异步执行此操作,即,每当发送或接收 SMS 时更新我的​​数据库。

我目前正在使用IntentService这样做,AlarmManager用于设置每 2 分钟重复运行一次。

我还尝试了一个“STICKY”服务,该服务在发送或接收 SMS 时 使用 aContentObserver来运行线程。handler.post()

我的疑问是:

1)哪种方法更有效?实现“STICKY”服务或 IntentService 方法的那个?

2)如果我使用handler.post(),想象以下场景:收到一条短信并运行线程。当这个线程运行时,如果收到另一条短信,是否会创建一个新线程并与旧线程同时运行?

3)除了我到目前为止尝试过的方法之外,还有其他方法吗?

谢谢。

4

0 回答 0