2012-05-15 39 views
1

我正在研究java中的一個小型Android項目,我正在使用spotify的webapi讓我如此數據來玩。Android:JSON或XML,緩存

訪問時我注意到的第一件事:https://developer.spotify.com/technologies/web-api/是開發者可以選擇使用xmljson

我想什麼做的是「緩存」我的數據,所以我可以做到以下幾點:

  • 從文件中讀取一個值,或者構造一個對象根據不同的數值
  • 添加的對象上面的lisviewadapter
  • 更新創造與更新的適配器
  • 疊代前面的步驟列表視圖,直到文件的解析是完全

我想盡可能快地爲我的用戶,以便ui在解析和加載數據時得到更新。爲此我畫了2個用例。

  • 項目添加到列表視圖,直到完成
  • 顯示物品的X量,並顯示負載更多按鈕

什麼文件類型是更理想的使用我的問題? XML解析或JSON解析?

我該如何解析?哪些工具符合我的要求?

哪種用例似乎更好用?

任何提示,如果你在過去做過這樣的事情?

任何指導讚賞

回答

2

我沒有對XML或JSON做任何區分。要緩存數據,您有兩個選項。將數據寫入文件(需要重新解析文件以提取數據(除非您創建新文件(例如CSV數據))或在解析後將所需數據寫入數據庫。至於更新ListView,這取決於您擁有的條目數量。

Android內置了XML和JSON解析器。你不需要GSON。

+0

首先,感謝您的回覆。正如你所提到的,我正在考慮使用sql lite來保存數據。但在GSON中構建解析器的優勢是什麼?你想用例如SAX解析器嗎?爲什麼? GSON慢嗎? – Tobrun

+1

我沒有使用過GSON,但它看起來更像'DocumentBuilder',它創建XML並解析它。如果您不需要創建XML/JSON,那麼只需使用純分析器來提取數據。 「DocumentBuilder」比「XMLReader」慢和重。 – techiServices

1

我建議JSON,因爲JSON使用較少bandwitch的換乘谷歌已經叫GSON一個真棒JSON解析器庫。

+0

謝謝你的回覆,我會看看GSON的實施。什麼是你對緩存這個json數據的看法,將GSON與SQL-lite結合使用來保存數據是否容易? – Tobrun

+1

GSON使得從JSON創建對象和從對象創建JSON變得更加容易。它不會爲你管理sql-lite。所以在這方面JSON沒有XML的優勢。但是,訪問JSON數據的便捷性使得數據更容易從sql中獲取數據:) – Warpzit