高效能iOS應用開發
IOS網路優化點
1.DNS查詢時間
為了最大限度地減少DNS查詢時間所產生的延遲,應遵循以下的實踐:
最小化應用使用的專有域名的數量。按照路由的一般工作方式,多個域名是不可避免的。最好能做到以下幾點:
身份管理(登入、登出、配置檔案)
資料服務(API端點)
CDN(圖片和其他靜態人工產品)
在應用啟動時不需要連線所有的域名,可能只需要身份管理和初始畫面所需的資料。對於後續的子域名,嘗試更早地進行DNS解析(DNS預先下載)。
2.SSL握手時間
SSL握手主要是驗證伺服器證書,同時共享用於通訊的隨機金鑰。這一過程會耗費較多的時間。
遵循以下實踐優化SSL握手:
最大程度地減少應用發起的連線數。因此,也需要減少應用連線的獨有域名的數量。
複用連線:為所有的HTTPS請求新增頭(Connection:Keep-alive)
使用域分片(不理解)
3.網路型別
遵循以下實踐使應用在各種網路環境下都能正常使用:
設計時考慮不同的網路型別。
對於流媒體,最好選擇HTTP實時流或任何可用的自適應位元率流媒體技術,這些技術可以在某一時刻對可用頻寬進行動態切換,切換至當前頻寬的最佳流質量,從而提供流暢的視訊播放。
對於非流媒體內容,需要確定在單位拉取時應該下載多少資料,並且資料量必須時自適應的。
同樣,在弱網狀態下,不要開啟視訊自動播放功能,節約使用者的流量第一。
對於自定義的非流媒體資料拉取,要保持對伺服器的關注。讓客戶端傳送網路特徵數,伺服器決定返回的記錄條數,這樣可以在不釋出新版本的情況下進行適應性改變。
出現失敗時,在隨機的、以指數增長的延遲後進行重試,但一定要設定最多的自動重試次數,不能不斷地刷伺服器
設定強制重新整理的間隔最短時間。當使用者明確要求重新整理時,不要立即發出請求。相反,檢查與上次請求時間間隔是否小於閥值或已經存在該請求。
使用可到達性庫發現網路狀態的變化。使用指示條向使用者展示不可用的狀態,讓使用者瞭解潛在的連線問題。
不要快取網路狀態。要始終使用網路敏感度高的任務的最新值。
基於網路型別下載內容,對於影像,可預先展示小尺寸影像,當使用者點選檢視原圖時下載原圖。 對於視訊內容,最好有一個與之關聯的預覽圖下。 可仿照WhatsApp對不同內容的網路型別進行可選設定。
預先下載:在Wi-Fi網路中預先下載使用者在後續時刻需要關注的內容。隨後可以使用快取內容,最好分次下載內容,在使用之後關掉網路連線。
相關文章
- Appcode 2022 for mac(ios應用開發)APPMaciOS
- iOS開發Runtime的理解與應用iOS
- IOS 逆向開發(三)應用簽名iOS
- AppCode 2022 for mac(ios應用開發)中文APPMaciOS
- ios應用開發+swift語言入門iOSSwift
- PHP - 《高效能php應用開發》學習筆記PHP筆記
- 鴻蒙 Android iOS 應用開發對比02鴻蒙AndroidiOS
- 用於金融科技應用開發的高效能圖表控制元件控制元件
- Flutter與Native混合開發-FlutterBoost整合應用和開發實踐(iOS)FlutteriOS
- iOS開發基礎110-Core Graphics應用場景iOS
- 2021 年 iOS 應用程式開發七種最佳語言iOS
- 玩轉iOS開發:裝逼技術RunTime的應用(一)iOS
- iOS應用轉讓到其他開發者賬號步驟iOS
- 官方翻譯 | 有關基於文件的iOS應用開發iOS
- iOS應用千萬級架構開篇iOS架構
- iOS 11開發教程(二十二)iOS11應用檢視實現按鈕的響應(2)iOS
- iOS11開發教程(二十三)iOS11應用檢視實現按鈕的響應(3)iOS
- 開發Web應用Web
- 1.1.4 應用開發
- 用vscode開發vue應用VSCodeVue
- iOS12系統應用開發基礎教程傳送郵件iOS
- 短視訊商城在ios短視訊開發上的應用效果iOS
- iOS開發實用軟體之NWPusheriOS
- iQiYi 高效能開源負載均衡器及應用負載
- 用VIPER構建iOS應用iOS
- 淺談設計模式在iOS開發實戰專案中的應用設計模式iOS
- Taro開發多端應用
- RabbitMQ的開發應用MQ
- 用VS Code開發Vue應用Vue
- iOS 開發iOS
- 蘋果計劃明年在印度開設iOS應用設計和開發加速器蘋果iOS
- iOS 11開發教程(二十一)iOS11應用檢視美化按鈕之實現按鈕的響應(1)iOS
- iOS開發中你真的會用#define麼!!!?iOS
- iOS應用簽名(上)iOS
- iOS應用簽名(下)iOS
- iOS專案開發MVVM架構實踐(第三篇:應用佈局)iOSMVVM架構
- 因谷歌違反iOS開發政策 蘋果封殺谷歌旗下大量APP應用谷歌iOS蘋果APP
- 使用Taro開發鴻蒙原生應用——快速上手,鴻蒙應用開發指南鴻蒙
- 使用 Taro 開發鴻蒙原生應用 —— 快速上手,鴻蒙應用開發指南鴻蒙