2011-04-11 65 views
7

我想以結構形式存儲數據,即關於多個呼叫的所有信息(如呼叫日誌)。我應該選擇什麼?我不想與其他應用程序分享我的數據。在android中存儲數據的最佳方法

  1. SQLiteDatabase
  2. 的ContentProvider
  3. SharedPreference
  4. 或文件存儲
  5. 或任何方式對我的要求,我不知道。

回答

0

您還可以將數據保存在您的應用程序創建的XML文件中。在很多應用程序中,我都這樣做了。使用任何SAX或DOM解析器都可以順利地檢索數據。 沒有其他應用程序可以訪問該XML。

希望這有助於

17

SharedPreferences顯然在內部實現爲被序列化和反序列化全面更新上的XML文件。這是一個沒有索引的Key-Value商店。所以只能用於與你的應用程序相關的簡單數據。任何超過50個鍵,你可能已經過度了。

ContentProvider旨在跨應用程序共享數據。你明確表示你不想這樣做。

SQLiteDatabase適用於各個應用程序存儲數據,並提供了很多靈活性以不同方式存儲和索引數據。我個人使用它將日誌存儲在我的一個應用程序中。我會推薦這條路線。

另一種選擇是登錄存儲在文件存儲中的普通文本文件。

+1

+1也幫助了我 – Joset 2011-04-11 07:18:46

1

我最近發現了db4o [http://www.db4o.com/android/]。這不是存儲日誌的最佳選擇,但如果你想將數據存儲在你的對象中,這當然是SQLite的一個很好的選擇。

相關問題