2017-03-18 106 views
-2

我正在尋求我需要創建的APP的幫助。我沒有android應用程序開發經驗,但我正在學習和練習。我應該使用arrary還是sqlite數據庫?

我正在嘗試構建一個應用程序來記錄來自客戶列表的付款並在付款時打印收據。我下載了一個有待結餘的客戶名單,使用json數組到android。現在,我很困惑,不知道是否應該使用數組或數據庫來存儲列表,因爲我需要稍後更新(上載)到服務器。 SQLite似乎是一種選擇,但是,每次用戶連接到WiFi時我都必須下載列表。

我想我必須將支付存儲在一個數組上,並在上傳時刷新它。

你能告訴我什麼是我試圖完成的任務的最佳選擇。

+0

如果您必須存儲和檢索值,那麼數據庫就是您想要的。數組是固定的 - 除非你沒有實現將它們序列化到文件的方式。而且,數組只能用於少數項目(比如說100個項目)。數據庫表可以包含多個字段,以提供更多詳細信息。它是可搜索的,可排序的,您可以使用聚合函數等。 –

回答

1

這取決於你的用例。數組和sqlite可以獨立或一起工作。

如果您打算在同一個會話中下載後立即上傳數據,那麼您可以將其保存在Array中,並在需要使用它之後上傳它。請記住,數組將保存在內存中,並且取決於您保存數組對象的位置,它們可能會持續存在於整個活動的生命週期或應用程序的生命週期中。

hander上的SQLite將數據寫入磁盤,所以即使在用戶退出應用程序之後,您仍然可以保留它。

...因爲我需要更新(上載)後來基於上述服務器

,好像你應該堅持在磁盤上的數據。 SQLite是保持數據的選項之一。看看here看看還有什麼可用於持久數據。

您可以將任何持久數據加載到您的陣列中並在處理完成後上載。

希望這會有所幫助。

+0

感謝您的回覆。一旦上傳到服務器,本地sqlite數據庫需要再次更新或重新創建新信息。 –

+0

下載的數據將暫時使用,直到付款上傳。一旦上傳,我想我需要刪除數據庫並保存新的信息。不知道這是否是最好的方法,但聽起來像是這樣。 –

+0

您可以更新當前數據庫中的數據並將其替換爲新數據。 – Naveed

相關問題