Android 如何从另一个应用程序[内容解析程序]中了解内容提供商数据库列名

Android 如何从另一个应用程序[内容解析程序]中了解内容提供商数据库列名,android,android-contentprovider,android-contentresolver,Android,Android Contentprovider,Android Contentresolver,我是android新手。我对内容提供和解决方案有一个疑问。我有我的自定义内容提供商应用程序,我想从另一个应用程序访问其数据库。我已经创建了uri,并在清单中授予了授权。当从另一个[Content Resolver]插入新值时,我的Resolver应用程序如何知道contentprovider的列名,因为我们必须创建ContentValues对象,并且在插入数据时需要列名。。。请帮助如果第三方应用程序公开其内容提供商,他们可能有关于如何访问该应用程序的文档,否则您应该联系该应用程序的作者 否则,您

我是android新手。我对内容提供和解决方案有一个疑问。我有我的自定义内容提供商应用程序,我想从另一个应用程序访问其数据库。我已经创建了uri,并在清单中授予了授权。当从另一个[Content Resolver]插入新值时,我的Resolver应用程序如何知道contentprovider的列名,因为我们必须创建ContentValues对象,并且在插入数据时需要列名。。。请帮助

如果第三方应用程序公开其内容提供商,他们可能有关于如何访问该应用程序的文档,否则您应该联系该应用程序的作者


否则,您可以使用空投影查询来自同一内容提供程序的数据,并打印您检索的游标中的所有列

实现
ContentProvider
的标准方法是创建附加的“contract”类,该类封装了与
ContentProvider
通信所需的所有信息(无论该
ContentProvider
是否导出)

如果您的
ContentProvider
应该可以从其他应用程序访问,您可以将其导出并向客户端发布相应的“合同”类(例如,在网站上发布JavaDoc、通过邮件发送等)

在AOSP中找到的“合同”类的示例是
ContactsContract
class。它的JavaDoc正在发布中。可以找到它的来源