[問題] 請教大量字串資料傳輸做法流程

作者: flyroy (伕萊羅伊)   2015-11-30 11:25:20
各位好,最近剛學習開發ANDROID APP
而我目前開發的案子有遇到以下的問題
想請問各位高手在業界的推薦做法是為何?
在WEB平台會有大量的商品資料,有文字+圖片
客戶端的手機要能與WEB平台上的商品資料一樣
由於需要能有同步後,在沒網路的情況下也能正常讀取
所以不能在手機上邊看商品邊下載資料
所以我目前想到的做法是...
手機端的商品資料是儲放在手機資料庫內
同步時,WEB平台會把所有商品資料轉成JSON格式字串
並和圖片壓縮成ZIP後,利用異動時間當檔名供手機下載
手機執行同步時檢查ZIP檔案是否有新檔案
若是則下載ZIP檔解壓後將JSON內容新增或修改於資料庫內
再將所需的圖片檔回存至手機內
由於WEB和APP平台都是我一人在開發,所以公司內無人可問
不知以上是否有更好或更正確的做法可教導我?
謝謝指教!
作者: erttyy8821 (俠)   2015-11-30 15:33:00
用json可以 但是何不直接用restful api跟server查?再不然就是看時間性選用push or timestamp
作者: kiwatami (悠游自在)   2015-11-30 22:59:00
這樣的做法有幾個問題第一是資料即時性的問題 如果你伺服器價格改了客戶卻是使用離線功能瀏覽 那價格兜不攏的情形怎麼辦?第二是如果客戶刪除 app 重新安裝你要一次同步所有資料 要花很多流量與時間再來就是客戶端儲存空間的限制佔很多容量就不用說了 但如果客戶端容量滿了該做什麼處理? 我覺得還是做成單純從伺服器撈資料會比較好
作者: flyroy (伕萊羅伊)   2015-12-01 00:06:00
感謝兩位的回覆,因為就是卡在要能"離線瀏覽"所以才一直在想要怎麼設計這些同步的問題因為我們的產品有點賣電子書,買了後不用上網也能透過APP去開啓內容,而APP本身就是像商城和清單,所以要能離線價錢問題,因為是會在SERVER檢查,若能連線就會先做資料更新
作者: kiwatami (悠游自在)   2015-12-02 07:18:00
我還是不太懂這個產品 不過如果你要同步建議你在server端做一個可以用時間取得更新內容的功能也就是你新增或更新資料時 要紀錄在一張表裡之後同步時再進那張表取得要更新的項目id再以id取資料更新 因為我不確定你說的檔案有多大這種方式是佔流量最小的方式 之前做的案子串接的api也是有提供這個方法來查詢不然等之後資料量變大 下載所有資料不論對 server還是 client 都是一個負擔
作者: KeySabre (KeySabreur)   2015-12-02 22:57:00
也就是 先比對id及時間 找出需要更新的id再行同步

Links booklink

Contact Us: admin [ a t ] ucptt.com