在开发Android应用程序时,我使用Loaders通过内容提供程序从本地SQLite DB异步检索数据并更新Views。
当我必须从Internet检索数据(即JSON)时,我使用意图服务。下载完成后,将触发广播接收器,并通过本地SQLite Db中的内容提供商存储收集的数据。
更新数据库后有没有办法触发加载程序执行?第一次从Internet下载数据时,我在更新数据库后更新广播接收器中的UI,但通过加载器也可以更加连贯。
更新
请注意我希望得到基于Android标准课程的答案(不是来自第三方的图书馆)
答案 0 :(得分:3)
更新数据库后有没有办法触发加载程序执行?
是的,只需在ContentProvider
中实施通知机制即可。基本上是:
query()
来电Cursor
之前,Cursor.setNotificationUri()
中的
在insert()
,delete()
,update()
中,通过ContentResolver.notifyChange()