根据 Android 文档,我们必须为匹配的每个 URI 提供 int 代码。
addURI(String authority, String path, int code)
正如文档所解释的那样:
添加要匹配的 URI,以及匹配此 URI 时要返回的代码。
"代码"扮演什么角色?
我理解在返回 -1 的 UriMatcher.NO_MATCH 的情况下,对于无效匹配!,但是对于其他代码,如 1、20、14 等呢?
例如
private static final int PEOPLE = 1;
private static final int PEOPLE_ID = 2;
private static final int PEOPLE_PHONES = 3;
private static final int PEOPLE_PHONES_ID = 4;
private static final int PEOPLE_CONTACTMETHODS = 7;
或 private static final int DELETED_PEOPLE = 20;
上面的代码是从这里获取的。
此代码将由 UriMatcher.match() 返回。然后,您可以使用 switch 语句根据匹配的 URI 类型执行操作。这是我自己项目中的一个例子。