繁体   English   中英

带有ContentProvider或SQLiteOpenHelper的Android Sqlite

[英]Android Sqlite with ContentProvider or SQLiteOpenHelper

我正在研究android db,遇到了2种工作方法:

1)仅使用SqliteOpenHelper

2)使用ContentProviderSqliteOpenHelper

使用一个或另一个有什么好处吗?

这个问题主要是基于意见的,但可以总结一下:

1)仅使用SqliteOpenHelper

您将必须自己管理数据库访问。 提供CRUD访问的方法并具有完全控制权。 可以并且仍然应该使用SqliteOpenHelper处理SqliteOpenHelper

2)使用ContentProvider和SqliteOpenHelper

这将使您可以通过框架方法访问数据库。 它使您可以立即使用CursorLoader (更改时自动刷新), SyncAdapter (将更改同步到服务器)以及其他一些功能。 由于您无权直接访问数据库,因此您将不得不使用URI路径来标识您的元素并发布查询。
由于它是官方的android api,因此可以更好地记录此选项,尽管您必须先阅读一些内容才能最佳使用它。


同样值得注意的是,如果其他开发人员查看您的代码,他们可能会知道如何使用ContentProvider (如果保持一致),但是他们将不得不阅读源代码(或文档)以了解如何使用您的ContentProvider自定义实现。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM