首页 > android 想要实时检查数据库有无符合要求的时间,以此来发送广播,如何实现?

android 想要实时检查数据库有无符合要求的时间,以此来发送广播,如何实现?

我需要做一个类似todo类型的app,每一个任务都有一个任务到期时间,需要对到期任务添加一些动作,我在主activity里面写了一次获取数据库的代码,和检查数据库里面是否有合适时间,如果有就发送广播的代码。
        //按时间日期发送广播,使之产生通知消息
        listItem_todo=getALLlist_todo();  //获取数据库信息
        sendNotification(listItem_todo);  //发送广播

但是这段代码无法做到每时每刻都刷新一次,所以就无法做到一到设定好的时间就发送一次广播,请问这样怎么做。。


搞个线程池,周期性得执行任务


每个任务的到期时间 其实和 我们常用闹钟 是一个原理。每个小项是一个定时任务,时间到了就触发某个动作。你用数据库的方式去做,稳定性和准确率还有体验都很差。


写一个监听的线程,专门负责监听数据库的变化
如果数据库发生变化,会回调通知监听线程
之后启动扫描数据库的线程,如果有符合要求的时间,发送广播


应该是启动一个服务,然后接受时间广播设定合适的频率比如1分钟去扫描数据库,或者如果数据库没有改动就不用总去取了,用缓存的数据即可(改变后重新读取)。

【热门文章】
【热门文章】