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