检查Android内容Uri

检查Android内容Uri,android,uri,android-contentprovider,Android,Uri,Android Contentprovider,我有两个应用程序。应用程序B有一个应用程序a可以与之交互的内容提供商。应用程序B不是必需的。如果查询应用程序B内容,则在未安装应用程序B时会出现此错误: Unknown URL content://com.appb.provider 现在我知道它在应用程序B存在时工作,我没有意识到如果没有提供商,查询会崩溃。在查询之前,我们应该如何检查自定义提供程序?ContentResolver中没有明显的布尔检查,我想我可以使用: getContentResolver().acquireContentPr

我有两个应用程序。应用程序B有一个应用程序a可以与之交互的内容提供商。应用程序B不是必需的。如果查询应用程序B内容,则在未安装应用程序B时会出现此错误:

Unknown URL content://com.appb.provider
现在我知道它在应用程序B存在时工作,我没有意识到如果没有提供商,查询会崩溃。在查询之前,我们应该如何检查自定义提供程序?ContentResolver中没有明显的布尔检查,我想我可以使用:

getContentResolver().acquireContentProviderClient()

但这似乎很严厉。有没有更好的方法来检查提供商是否存在?

我找到了一个不错的解决方案,包括:

getContentResolver().getType()
您可以检查null,而不必担心释放客户机。还有更好的选择