使用Cursor访问数据库和使用ContentResolver有什么区别?

时间:2011-05-28 03:59:00

标签: android sqlite search cursor android-contentprovider

您好我是一名新的Android编码器,我一直在关注如何在设备中设置数据库的书籍。

我最近使用通过Cursor访问数据库的方法成功设置了我的数据库(以下书中的示例)。现在我想在数据库中添加搜索功能,这是使用ContentResolver(我没有按照这种方式设置我的数据库)在教科书中教授的。

我仍然对两种方式持开放态度,但想知道两种方法之间的区别是什么?

谢谢!

1 个答案:

答案 0 :(得分:2)

ContentResolver / ContentProvider机制用于允许应用程序跨应用程序共享信息。虽然它可以用于在单个应用程序内共享数据,但它可能有点过分。

问题实际上是“你将如何使用数据库中的数据?”它是私有的,仅适用于您的应用吗?如果是这样,只需使用光标并节省一些时间。如果您要创建的应用程序提供您希望其他应用程序使用的数据,请考虑添加ContentProvider以将该数据公开给其他人。如果您不想将数据公开给其他人,请不要实现ContentProvider。 (ContentProvider是ContentPRovider / ContentResolver关系的DB端)

Read More Here.