我至少在紙面上了解內容提供者和直接訪問SQLite數據庫的基本區別。我有一個適用於我的應用程序的函數原型,目前它只是直接訪問數據庫。我真的沒有使用Content Provider模式的經驗,但我發現我需要與另一個應用程序共享一些數據。內容提供者與直接訪問數據庫(事務管理)
我只會共享12個左右的表中的2個,所以我想知道是否應該完全重做數據層以遵循Content Provider模式,或只是通過Content Provider公開這些表爲了其他應用程序的緣故,仍然直接訪問主應用程序中的數據庫。
我與我的原型遇到的問題之一是我有一些相當複雜的交易,我寫的代碼讓我工作的設計不是特別好,並且根本不可重用。當我爲這個應用程序添加更多功能時,我將需要一個更好設計的數據訪問層,在我開始編寫自己的應用程序之前,是否有人知道這種類型的設計模式有任何好的資源?另外,如果我需要轉到內容提供者路線,我是否可以嚴格控制數據庫事務?
謝謝,我同意沒有理由只使用內容提供者來滿足模式。事實上,直接訪問數據庫也是一種完全可行的模式。經過一番研究後,似乎ContentProvider無法管理多個API調用中的事務,就像我需要的那樣(http://www.mail-archive.com/[email protected]/msg42281.html)我將堅持在覈心應用程序中直接訪問,只需添加ContentProvider即可公開所需內容。 – Mike 2010-08-08 22:40:42