成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Android編程開發之性能優化技巧

開發 后端
本篇文章我們重點談論性能優化的5個方面:App啟動速度優化、UI流暢度優化、內存優化、apk瘦身、電量優化。

一般情況下,我們談性能優化基本上會從以下幾個方面:

  1. App啟動速度優化
  2. UI流暢度優化
  3. 內存優化
  4. apk瘦身
  5. 電量優化

還有些網絡速度優化、以及特定類型app的一些針對性的優化,比如播放器起播速度等...。

本篇文章我們重點談論上面5個方面。

Android編程開發

性能優化正常的流程是,發現自己某方面與競品差距比較大,比如UI渲染速度,需要通過某種方式去發現為什么比別人慢,往往需要利用一些工具,然后可以做一些針對性的調優(代碼優化、實現方式改變等),當然了在調優的過程中會有一些通用性的調優方式可以幫助你。

所以本文從共性的角度來看,主要介紹的就是針對以上5個方面的檢測工具以及調優方式了。

1. App啟動速度優化

對于App啟動速度優化,一般情況下我們會利用主題去防止出現白屏;針對啟動速度慢,需要盡可能減少Application的onCreate中所要做的事情,比如一些不重要的SDK延遲或者異步加載;多進程情況下一定要可以在onCreate中去區分進程做一些初始化工作;部分將要使用到的類異步加載;還有針對multidex專門做優化的(當然這個隨著5.0以上的設備越來越多,影響倒是沒有那么大了)。

當然了,在檢測啟動優化上,除了利用adb命令去檢測總時間,還有就是去發現耗時的方法,可以利用TraceView,或者打開StrictMode,如果你喜歡使用Log,還可以去使用hugo,或者自己寫一個類似的AOP日志框架。

StrictMode比較簡單,就不描述了,hugo是Jake大神的一個開源庫,主要是利用aspectJ,源碼很少,也比較簡單,不過使用起來還不錯,直接看readme就夠了。

2. UI流暢度優化

談到UI流暢度,一般就是不要在主進程去做耗時的操作,提升UI的繪制速度(減少View的布局層級,避免過渡繪制等)...TraceView、Lint、Hugo、StrictMode等...

當然了對于UI卡頓,不可避免的要引入檢測的方案:一般有監聽Looper的日志。

3. 內存優化

內存優化那么主要就是去消除應用中的內存泄露、避免內存抖動;常用工具就是AS自帶的內存檢測,可以很好的發現內存抖動;leakcanary可以非常方便的幫助我們發現內存泄露;MAT可以做更多的內存分析。

4. apk瘦身

關于Apk瘦身,主要由以下幾個方式:

  • 利用ProGuard壓縮代碼去除無用資源
  • andresguard進一步壓縮與混淆資源
  • 第三方開源庫的瘦身,僅保留自己需要的部分
  • ***的圖片壓縮與webp的使用
  • 合理配置去除不必要的配置,僅保留中文配置等...
  • so的優化與配置,只保留一類so
  • 動態下發一些資源:字庫、so、換膚包等;

以上僅有7比較麻煩,需要服務端的配合,此外對于動態下發So,可以參考tinker對So熱修復部分代碼。

5. 電量優化

電量優化說實在的關注度較低,一般情況就是合理的使用一些傳感器、謹慎的使用Wake Lock、減少后臺的不要的操作等...檢測可以利用battery-historian

好了,大家可以將每個方案的所采用的實際的優化策略記錄下來,對每種方式提到的工具一定要自己去體驗,用起來肯定不會有多么的困難,實操起來印象會更加深刻。

性能優化并不困難,重要的還是要去實際的去操作一把,基本上也是面試常見的問題了。

***,好文非常多,本文希望僅起到拋磚引入的效果,感謝所有作者~

想起來了16年MDCC上明云兇做過一個性能優化的分享,所以每次談到性能優化我都能想到當年演講的ppt。

對了,騰訊有個非常強大的手機上的“集成調測環境”,就是手機上的軟件,可以用于性能檢測,叫GT。

責任編輯:趙寧寧 來源: 紅黑聯盟
相關推薦

2013-02-20 14:32:37

Android開發性能

2018-11-20 10:50:00

Java性能優化編程技巧

2011-07-11 15:26:49

性能優化算法

2011-06-14 13:48:07

性能優化工具

2011-06-14 14:32:46

性能優化

2011-06-14 11:14:10

性能優化代碼

2011-06-14 14:17:23

性能優化系統層次

2021-07-29 14:20:34

網絡優化移動互聯網數據存儲

2011-03-11 15:53:02

LAMP優化

2011-09-29 09:50:44

JavaScript

2019-12-13 10:25:08

Android性能優化啟動優化

2015-09-16 14:47:14

Android性能優化代碼

2019-03-21 14:18:38

iOS開發優化原因

2009-06-16 16:39:49

Hibernate性能

2011-03-11 15:52:57

LAMP優化

2015-09-16 13:54:30

Android性能優化渲染

2015-09-16 14:37:50

Android性能優化運算

2015-09-16 15:48:55

Android性能優化電量

2013-09-17 10:32:08

Android性能優化數據庫

2024-06-04 07:46:05

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲一区视频在线 | 播放一级黄色片 | 天堂在线www | 一区二区三区四区不卡 | 久久999| 欧美aaa一级片 | 欧美在线播放一区 | 一级黄色生活视频 | 日韩免| 国产精品伦理一区 | 可以看黄的视频 | 777777777亚洲妇女 | 岛国av免费在线观看 | 毛片99| 在线精品亚洲欧美日韩国产 | 在线看亚洲 | 国产日韩精品一区二区三区 | 久久久久国产一区二区三区四区 | 91久久国产综合久久 | 午夜激情影院 | 成人在线精品视频 | 国产精品久久久久久中文字 | 日本欧美在线观看视频 | 久久久久久网站 | 中文在线а√在线8 | 国产一区二区在线视频 | 精品网 | 国产乱码一区 | 2022国产精品 | 久久av网| 伊人超碰在线 | 国产日韩欧美 | 中文字幕人成乱码在线观看 | www,黄色,com | 影音先锋中文字幕在线观看 | 国产精品自产拍 | 97国产超碰 | 这里只有精品99re | 一级特黄视频 | 日韩欧美精品在线播放 | 在线免费观看黄色av |