CursorWrapper getNotificationUri后端口

时间:2014-01-27 18:36:34

标签: android android-4.4-kitkat

KitKat将方法getNotificationUri()添加到CursorWrapper。除了使用反射之外,是否有更简洁的方法在较旧的API版本上检索它?

1 个答案:

答案 0 :(得分:0)

Cursor是一个接口。这取决于你正在使用的Cursor的实现。从AbstractCursor派生的任何Cursor都支持getNotificationUri at least since Android 4.0.1。您只需将Cursor转换为AbstractCursor即可调用getNotificationUri()。

对于旧版本的Android(例如2.3),AbstractCursor中不存在该方法。然而 是一种非常脏的访问方式: reflection 。您要查找的Uri存储在名为mNotifyUri的私有字段中(AbstractCursor中为line 634)。反思,特别是以这种方式使用,通常不赞成,所以我不建议这样做。