我有Fragment使用LoaderManager使用Cursor从Sqlite DB获取数据,如下所示,最后在列表适配器中查看,
@Override
public Loader<Cursor> onCreateLoader(int id, Bundle args) {
return new FeedListCursorLoader(getActivity());
}
@Override
public void onLoadFinished(Loader<Cursor> loader, Cursor cursor) {
mCursorAdapter adapter = new mCursorAdapter(getActivity(),
(mCursor) cursor);
setListAdapter(adapter);
}
我有一个处理GCM通知的Intent服务,逻辑是我发送GCM消息,然后WakefulBroadcastReceiver调用intent服务,然后服务调用网络线程与后端同步,如下所示,
Backend sends GCM -> GCMBroadcastReceiver -> GCMIntentService -> NetworkThread -> Get data from Backend -> Save it in DB
除了在数据库数据发生变化后更新列表适配器之外,一切都运行得很好,我不知道如何通过意向服务或NetworkThread通知Fragment中的加载器管理器源已更改,你可以帮帮我吗?