Android 为什么';通知URI对合并游标不起作用吗?
假设在Android 为什么';通知URI对合并游标不起作用吗?,android,android-contentprovider,android-contentresolver,android-cursor,android-cursorloader,Android,Android Contentprovider,Android Contentresolver,Android Cursor,Android Cursorloader,假设在ContentProvider中有一个CONTENT\u URI,您想在其中执行一些复杂的操作,并返回一个游标组合(MergeCursor),而不是一个简单的游标 如果在MergeCursor上设置通知URI,而不是在该MergeCursor中设置光标,则通知将不起作用 初始代码: Cursor[] cursors = { extraCursorBefore, usersCursor, extraCursorAfter }; Cursor e
ContentProvider
中有一个CONTENT\u URI
,您想在其中执行一些复杂的操作,并返回一个游标组合(MergeCursor
),而不是一个简单的游标
如果在MergeCursor
上设置通知URI
,而不是在该MergeCursor
中设置光标,则通知将不起作用
初始代码:
Cursor[] cursors = { extraCursorBefore, usersCursor, extraCursorAfter };
Cursor extendedCursor = new MergeCursor(cursors);
// Make sure that potential listeners are getting notified
extendedCursor.setNotificationUri(getContext().getContentResolver(), CONTENT_URI_PEOPLE);
return extendedCursor;
PS:如果通过任何方式,有人有了另一个想法,或者弄明白了为什么原来的MergeCursor
,那么请分享你的知识。所以你需要在光标上设置通知URI
,从产生的MergeCursor
中开始
实际工作的代码:
Cursor[] cursors = { extraCursorBefore, usersCursor, extraCursorAfter };
Cursor extendedCursor = new MergeCursor(cursors);
// Make sure that potential listeners are getting notified
usersCursor.setNotificationUri(getContext().getContentResolver(), CONTENT_URI_PEOPLE);
return extendedCursor;
我想你看到了这个bug报告: