App的性能優化,可以從多角度優化,包括App啟動優化,App啟動優化又分為main()函數執行前優化,main()函數執行后優化;包括界面卡頓優化,頁面卡頓優化又包括CPU優化和GPU優化;包括安裝包瘦身優化、包括耗電優化等。今天我們主要來講講如何處理App耗電優化
圖片來自網絡
App中主要耗電來源有:CPU處理、網絡、定位、圖像處理等。我們可以從降低CPU、GPU功能消耗、減少定時器的使用、優化I/O操作等來優化。
1、盡量不要頻繁地寫入小數據,最好批量一次寫入
2、讀寫大量數據時,考慮用dispatch_io,它提供了基于GCD的異步操作文件I/O的API,系統會優化磁盤訪問
3、持久化數據量比較大時,建議使用數據庫存儲
網絡優化
1、減少、壓縮網絡數據
2、如果多次請求的結果是相同的,盡量使用緩存
3、使用斷點續傳,否則網絡不穩定時可能多次傳輸相同的內容
4、網絡不可用時,不要嘗試執行網絡請求
5、批量傳輸
定位優化
1、如果只是快速確認用戶位置,最好用CLLocationManager的requestLocation,定位完后,會自動讓定位硬件斷電
2、如果不是導航應用,盡量不要實時更新位置,定位完畢就關掉定位服務
3、盡量降低定位精度
4、App需要后臺定位時,盡量設置
pausesLocationUpdatesAutomaticall為YES,如果用戶不太可能移動的時候系統會自動暫停位置更新