tom*_*nor 16 android uri android-contentresolver android-contentprovider contentobserver
一个有希望直截了当的问题:当ContentResolver.notifyChange()为某个给定URI调用时,是否会ContentObserver观察到此URI的后代 URI?
例如,假设我有一个游标设置来观察特定资源的URI:
Uri uriA = Uri.parse("content://" + AUTHORITY + "/orders/21");
cursor.setNotificationUri(getContext().getContentResolver(), uriA);
Run Code Online (Sandbox Code Playgroud)
然后我通知ContentResolver更改此URI的祖先(例如,因为我删除了所有订单):
Uri uriB = Uri.parse("content://" + AUTHORITY + "/orders");
getContext().getContentResolver().notifyChange(uriB, null);
Run Code Online (Sandbox Code Playgroud)
我的Cursor注册观察uriA会被通知吗?
Xia*_*iao 30
这取决于它的注册方式.如果ContentObserver注册notifyForDescendents参数设置为true,则为yes.否则没有.
注册是通过以下方法完成的
ContentResolver#registerContentObserver:
void registerContentObserver (Uri uri, boolean notifyForDescendents, ContentObserver observer)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9001 次 |
| 最近记录: |