移動裝置因為其獨特的網路環境,應用可以獲取的網路速度、網路質量、網路頻寬都有很大的限制,如何在這種限制環境下表現出優秀的使用者體驗,就涉及到應用的網路環境優化了,下面僅從幾個常見的方面給出幾點建議。
移動裝置與伺服器接**互的優化主要體現在傳輸速度、請求頻次、資源消耗幾個方面。客戶端自身的優化則主要體現在快取策略、頻寬利用幾個方面。
使用gzip來壓縮請求體和返回體, 減少傳輸資料量, 從而減少流量消耗.
目前主流的資料傳輸格式有json、xml等,xml現在已經基本不使用;json資料解析方便,體積小,使用廣泛;在此基礎上,其實還有protocol buffer這些高效的資料格式。
這個主要體現在資源檔案的請求上,比如。我們可以根據不同的場景來新增請求引數請求不同配置的資源,在獲取時告知伺服器需要的的寬高, 以便伺服器給出合適的, 避免浪費。舉個例子:我們在資訊流中可以請求中解析度的小圖,在詳情頁面中請求高解析度的大圖。
在介面的設計過程中,我們可以盡可能的合併介面,比如:註冊成功後,我們可以直接儲存登入狀態而不用在此呼叫登入介面。
在安卓系統中是以大物件存在的。對於的優化也是異常重要。我們可以從下面幾點來進行一些優化處理工作。
格式選擇,我們可以優先選擇webp格式來進行網路傳輸。webp可以輸出乙個和原圖幾乎完全一樣的。
同樣的**,採用webp格式可大幅節省流量,相對於jpg格式的,流量能節省將近 25% 到 35 %;相對於 png 格式的,流量可以節省將近80%。最重要的是使用webp之後質量也沒有改變。
基於當前網路環境來選擇載入的質量。在網路環境比較差的時候,選擇載入質量偏低的資源
的本地快取策略,這在一些載入框架中幾乎是必不可少的
佔位的使用
適當的快取, 既可以讓我們的應用看起來更快, 也能避免一些不必要的流量消耗,通過快取機制,我們甚至可以實現部分時刻的無網路訪問。其中主要包括:
應用通過監聽裝置的狀態:
來針對當前狀態進行一些優化。比如在弱網狀態下:
當然在網路環境較好時,可以適當進行一些複雜的網路任務:
優秀的策略可以提高頻寬使用率,增強使用體驗。比如說:
dns解析的失敗率佔聯網失敗中很大一種,而且首次網域名稱解析一般需要幾百毫秒。針對此,我們可以不用網域名稱,才用ip直連省去dns解析過程,節省這部分時間。
安卓 Recycleview效能優化
原帖 link.更改tablayout選中的背景色 原理是利用selector 第一步在drawable資料夾下建立檔案 tab background.xml android drawable drawable tab background selected android state select...
安卓網路優化(5)
1 避免頻繁網路請求 有效管理service 後台服務就相當於乙個持續執行的acitivity,如果開發的程式後台都會乙個service不停的去伺服器上更新資料,在不更新資料的時候就讓它sleep,這種方式是非常耗電的,解決 通常情況下,可以使用alarmmanager來定時啟動服務。實驗 30分鐘...
優化建議 儲存效能優化。
在 應用中,海量的資料讀寫對磁碟訪問造成巨大壓力,雖然可以通過cache解決一部分資料讀壓力,但是很多時候,磁碟仍然是系統最嚴重的瓶頸。而且磁碟中儲存的資料是 最重要的資產,磁碟的可用性和容錯性也至關重要。機械硬碟是目前最常用的一種硬碟,通過馬達驅動磁頭臂,帶動磁頭到指定的磁碟位置訪問資料,由於每次...