Android 如何使用URI编辑同一数据库中的多个表

Android 如何使用URI编辑同一数据库中的多个表,android,uri,android-contentprovider,Android,Uri,Android Contentprovider,我有一个数据库,在数据库中我有3个表,但我使用的是一个内容提供商,那么我如何区分这些表呢?我了解uri的格式,并且我必须为每个uri使用单独的路径,但是如何使用不同的路径获取uri的值呢。我是否需要使用uri匹配器,然后根据我在参数中输入的内容返回我想要的uri?从我在网上发现的情况来看,urimatcher似乎只用于内容提供者中的get-type方法 我是否需要使用uri匹配器,然后它将返回我想要的uri 根据我输入的参数 对。使用Uri参数调用ContentProvider的每个方法。您只需

我有一个数据库,在数据库中我有3个表,但我使用的是一个内容提供商,那么我如何区分这些表呢?我了解uri的格式,并且我必须为每个uri使用单独的路径,但是如何使用不同的路径获取uri的值呢。我是否需要使用uri匹配器,然后根据我在参数中输入的内容返回我想要的uri?从我在网上发现的情况来看,urimatcher似乎只用于内容提供者中的get-type方法

我是否需要使用uri匹配器,然后它将返回我想要的uri 根据我输入的参数


对。使用
Uri
参数调用
ContentProvider
的每个方法。您只需将其传递给您的
UriMatcher
,然后在
switch
语句中继续。

您是否可以添加一个示例。这是我学习和理解事物的最好方式,就是通过观察它的完成。发布你到目前为止所拥有的,我将把它扩展到多个表中。从头开始写一个例子太费时了。我很难在评论中正确地格式化它。我会尽量简化我的问题。如果我使用我的内容提供商访问3个表中的1个,我如何选择要访问的表?我是否只调用常规方法,但对于uri/authority参数,我是否调用urimatcher方法并将对应于表路径的静态变量放入matcher参数。我是否只需要创建另一个uri,其中只有path变量发生了更改?我在想有一种更复杂的方法来解决这个问题。只要更新你的问题——它会很好地格式化。但是是的,您基本上会向UriMatcher实例化添加更多路径,然后将代码定向到query/insert/update/delete中的适当表中。