2017-09-15 88 views
-1

任何人有任何最好的想法,以在線以及離線工作的Android應用程序?另外,如何管理與本地數據庫的服務器端數據同步?如何讓android應用程序在服務器端同時聯機和脫機?以及如何同步服務器端數據?

+3

看到這是一個有趣的問題,因爲這是每個客戶端應用程序和後端開發人員必須解決的問題,需要在他們的API和他們的應用程序設計中弄清楚。慚愧*這個問題太廣泛了*,並取決於你的數據庫在客戶端和服務器端,你選擇使用什麼技術,以及你的項目限制等等等等。 – EpicPandaForce

+0

我會建議,「僱用一個人來做這個」。 –

+0

第一個問題的答案是在第二個問題「在線和離線」中寫出來的,只要用戶上線,本地數據庫就會同步。第二個問題的答案是服務組合和AsyncTask的 –

回答

5

採取的步驟一個完整的離線應用:

1)你的UI總是從數據庫中顯示的數據,並積極聽取任何分貝的變化。

2)每當用戶與您的應用程序交互時,您直接更新數據庫並標記您數據庫中的相關字段以與您的服務器同步。 (請注意,您的用戶界面會在數據庫更改時立即更新)

3)您的網絡層將偵聽您數據庫中標記的字段更改並嘗試與服務器同步。

4)當服務器端更改成功時,您取消標記您現在同步成功的db字段。 5)如果您正在執行向下同步(即:服務器具有更新的數據並希望客戶端進行相應更新),則可以向設備發送推送通知並進行網絡調用以獲取最新數據取決於通知消息。

爲了順利運行,您需要一個反應型數據庫。 領域數據庫就是我用過的一個例子。

+0

如果我只是處理一些小數據,這很容易。如果數據很大,該怎麼辦?我需要將每個數據與更新的數據同步。 – The90sArtist

+0

我需要更多的上下文來回答這個問題,假設您正在製作的新聞應用程序,你可以獲取來自服務器的所有數據一次在早晨天(說),並從數據庫中顯示數據 –

相關問題