我可以在我的应用程序中使用内容解析程序而无需创建提供程序吗?
问题描述:
我正在阅读关于内容提供商的开发者指南,并且在那里提到我不应该创建自己的提供者,除非有需要。我可以在我的应用程序中使用内容解析程序而无需创建提供程序吗?
所以我的问题是:
- 我可以使用内容解析器在我的应用程序,而无需创建我自己的供应商?
- 什么是最好的方法?我是否应该始终使用内容解析器(并根据需要创建自己的提供程序),以便对数据库执行所有操作或直接与SQLiteHelper类进行通信。
答
我可以在我的应用程序中使用内容解析程序而无需创建自己的提供程序吗?
可以使用ContentResolver
与任何其他现有ContentProvider
,如由OS提供的那些(例如,ContactsContract
)。
我应该总是使用一个内容解析器(和创建自己的供应商如果需要的话)来完成所有与数据库或直接对话SQLiteHelper类的操作
有关于这个问题的不同意见。就个人而言,我不是ContentProvider
的忠实粉丝,所以我只在需要时才使用它,例如进程间通信。但是,有人认为在应用程序内纯粹用于内部使用ContentProvider
是非常棒的。没有正确或错误的答案。