ContentProvider notifyChange被忽略

时间:2016-06-24 06:30:53

标签: android android-contentprovider loader contentobserver

我们有一个AsyncTaskLoader,在函数loadInBackground中我们查询内容提供商。
在返回查询时,我们从提供者处获得一个光标 现在,在此光标上,我们设置了ForceLoadContentObserver,如下所示:

private final ForceLoadContentObserver mObserver = new ForceLoadContentObserver();
cursor.registerContentObserver(mObserver);

现在,当我们更改特定文件时,提供商已完成notifyChange 在正常情况下,这个notifyChange触发我的加载器的loadInBackground,然后重新查询提供者的新数据。
但在某些情况下,loadInBackground不会触发notifyChange

原因: 当ContentProvider完成notifyChange时,在某个工作线程上调用我的加载器的loadInBackground。 在问题场景中,我的loadinBackground未完成,提供程序执行新的notifyChange。 似乎系统忽略了新的notifyChange。

可以解决这个问题的方法是什么?

0 个答案:

没有答案