DbAdapter类与ContentProvider有什么区别?

时间:2011-06-05 09:41:25

标签: android sqlite android-contentprovider

我试图找出通过DbAdapter类设置数据库或在Content Provider中设置所有内容之间的区别?

DbAdapter类是否是一个临时权宜之计,而ContentProvider是一个长期解决方案,允许更多功能,如搜索功能和东西?

可以在ContentProvider中构建Dbadapter类的实例吗?这样我实际上可以直接从提供者类调用和管理数据库中的所有内容吗?

1 个答案:

答案 0 :(得分:1)

我肯定会建议花些时间学习如何编写ContentProvider。起初它们有点令人生畏,但是一旦你掌握了这个概念,你就会获得巨额回报;特别是如果你正在创建一个中等复杂的应用程序。

使用ContentProvider时:

  • 可以使用内容提供商 其他过程并且是必需的 Android上的一些机制就像 全球搜索
  • 其他应用程序将能够 访问您的数据。
  • 你可以包装和 抽象了很多查询逻辑 您的内容提供商和限制 访问。
  • 你将能够依靠 系统允许这样的事情 托管查询。

事实上,ContentProvider是DBAdapter的包装器,提供标准方法,如查询,更新,删除等。

这是一个很好的教程: http://thinkandroid.wordpress.com/2010/01/13/writing-your-own-contentprovider/