思路:鏈接Internet資源-->分析XML資源-->使用Download Manager下載文件瀏覽器
Android的Internet鏈接模型和用於分析Internet數據源的Java技術。緩存
Android的Internet鏈接模型和用於分析Internet數據源的Java技術。服務器
胖客戶端和瘦客戶端(徹底依靠基於Web的解決方案)的本地應用程序的區別和優勢:網絡
1. 上述胖客戶端指非原生的Android應用程序(或基於Web的應用程序);瘦客戶端指原生Android應用程序(或本地應用程序,或者是基於Internet的應用程序)。或者二者相互對調定義,名字只是一個稱呼而已,關鍵是角度如何;佈局
2. 帶寬:對於帶寬有限的設備而言,好比圖片、佈局和聲音這樣的靜態資源多是很是昂貴的帶寬消費者。經過建立一個本地應用程序,能夠把帶寬需求僅限於進行數據更改;優化
3. 緩存:使用基於瀏覽器的解決方案時,一個不穩定的Internet鏈接可能會致使不持續的應用程序可用性。本地應用程序能夠在沒有實時鏈接的狀況下經過緩存數據和用戶操做來提供儘量多的功能,而且在當鏈接從新創建時,可以與雲進行同步;spa
4. 下降電源消耗:應用程序每次打開一個指向服務器的鏈接時,無線設備會就打開(或者保持打開)。本地應用程序能夠捆綁與網絡的鏈接,從而將啓動的鏈接數降到最低。網絡請求間隔的時間越久,無線設備能夠保持關閉的時間就越久。圖片
5. 本地功能:Android設備不單單是可以運行瀏覽器的簡單平臺。經過建立一個本地應用程序,能夠把那些聯機可用的數據和設備上可用的硬件功能結合起來,從而提供更加豐富的用戶體驗。資源
經過限制傳輸的數據量來優化用戶體驗,並確保應用程序足夠健壯,以處理網絡中斷和帶寬限制。同步
鏈接網絡--> 請求數據 --> 解析數據
使用Download Manager,做爲一個Service來優化長時間下載操做的處理。建議,最好在大多數場景下都使用Download Manager來管理下載任務。經過使用上述實例,能夠對某個下載進行進一步的操做或者查詢,包括查看狀態或者取消下載;能夠對下載條件進行設置,好比:確保只有鏈接到WIFI時才進行大文件的下載;能夠自定義使用Download Manager Notification顯示當前下載的進度和文件名。
下載數據(需獲取到一個鏈接)而不會耗盡電量的最佳實踐:
下載數據時,使用的時機和技術會對電池壽命有顯著的影響。移動設備的無線電處於激活狀態時會消耗大量的電量;每當建立一個新的鏈接來下載其餘的數據時,可能會將無線電設備從待機狀態喚醒到激活狀態。通常狀況下,最好將鏈接和相關的下載綁定以同時且不頻繁地執行它們。相反,建立頻繁、短暫的鏈接來下載少許的數據,會對電池有最顯著的影響。