2016-02-09 104 views
0

這可能是重複的問題,但我仍然有疑問,我在Android應用程序初學者我有幾個疑問我的主要疑問是:同步服務器的offine數據?

  1. 我已經作出一個應用程序將與服務器進行通信時,網絡可用時將按原樣工作。當網絡不可用時,數據將保存在sqlite中,之後當網絡可用時,需要將該數據同步到服務器,我如何實現這一點。

  2. ,每當有新的更新與服務器建立需要得到通知,我怎麼能做到這一點

  3. 對於這一個,這將是最好的辦法syncadapter或服務器或意圖服務,廣播接收器,其將opptimized針對上述要求的解決方案

這些都是我的疑惑,如果有人幫助我,我會很高興!

回答

0

如果您希望在您控制的服務器上發生某些事情時通知Android應用(無需應用持續輪詢服務器以請求更改),通常的解決方案是使用Google Cloud Messaging來允許服務器發送通知應用程序告訴它刷新數據。

實現起來有點複雜,但它是實現你想要的最好的方法,也是移動應用程序的標準實踐。

+0

那麼這將是最佳的方法syncadapter或intentservice與廣播 – Yog

+0

這不是從您的選項列表中選擇的問題。請看看在您的應用中實施GCM需要什麼。它比你想象的更復雜,但更有用。 –

+0

使用廣播我可以推送意向服務通知它是標準方式正確 – Yog

0

如果您需要知道網絡何時可用,請訪問您的服務器進行同步,實現連接更改監聽器,如this question中所述。

這不允許從服務器輕鬆發送消息,但是如果服務器消息的緊迫性不是很高,也許可以定期檢查它們。

這將允許使用較少的Google特定基礎架構,並更輕鬆地更改雲提供商。

+0

然後哪個哪個會優化方法syncadapter或intentservice – Yog