[英]Android Sqlite with ContentProvider or SQLiteOpenHelper
我正在研究android db,遇到了2種工作方法:
1)僅使用SqliteOpenHelper
2)使用ContentProvider
和SqliteOpenHelper
使用一個或另一個有什么好處嗎?
這個問題主要是基於意見的,但可以總結一下:
1)僅使用SqliteOpenHelper
您將必須自己管理數據庫訪問。 提供CRUD訪問的方法並具有完全控制權。 可以並且仍然應該使用SqliteOpenHelper
處理SqliteOpenHelper
。
2)使用ContentProvider和SqliteOpenHelper
這將使您可以通過框架方法訪問數據庫。 它使您可以立即使用CursorLoader
(更改時自動刷新), SyncAdapter
(將更改同步到服務器)以及其他一些功能。 由於您無權直接訪問數據庫,因此您將不得不使用URI
路徑來標識您的元素並發布查詢。
由於它是官方的android api,因此可以更好地記錄此選項,盡管您必須先閱讀一些內容才能最佳使用它。
同樣值得注意的是,如果其他開發人員查看您的代碼,他們可能會知道如何使用ContentProvider
(如果保持一致),但是他們將不得不閱讀源代碼(或文檔)以了解如何使用您的ContentProvider
自定義實現。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.