Android知識地圖

這是一個給自己整理的Android知識地圖,做Android開發(fā)多年,卻鮮少有積累,悔不當(dāng)初,如今廉波老矣才來整理自己的知識地圖,好在亡羊補牢猶未為晚。

1.UI

1.1繪制

1.2布局

1.3事件分發(fā)

1.4動畫

1.5硬件加速

1.6WindowManager

2.線程

多線程相關(guān)類,同步

Handler,Looper,Message

多線程轉(zhuǎn)換和管理

3.進(jìn)程

多進(jìn)程傳遞數(shù)據(jù)

進(jìn)程?;睿?/p>

根本是降低oom_adj的值,數(shù)值越小越不會被殺死

1.規(guī)矩滴用前臺service

2.sdk以及app互相喚醒,系統(tǒng)廣播喚醒(后續(xù)版本已經(jīng)不給力了)

3.notification的漏洞,給空notification或者啟動兩個前臺service,后者關(guān)掉notification,android4.3以后已經(jīng)不行了

4.一個像素的Activity

5.降低內(nèi)存,可以使用多進(jìn)程拆分,降低需要?;畹倪M(jìn)程的內(nèi)存占用

6.JobSheduler

7.賬號同步

8.NotificationListenerService但需要權(quán)限?android.permission.BIND_NOTIFICATION_LISTENER_SERVICE

IPC機(jī)制 http://gityuan.com/2015/10/31/binder-prepare/

4.動態(tài)加載,熱修復(fù)原理,插件化,class loader

5.數(shù)據(jù)庫

6.虛擬機(jī)

Dalvik與ART(Android Runtime)

在Dalvik下,應(yīng)用每次運行的時候,字節(jié)碼都需要通過即時編譯器(just in time ,JIT)轉(zhuǎn)換為機(jī)器碼,這會導(dǎo)致很慢

ART則是在安裝時使用預(yù)編譯(AOT,Ahead-Of-Time)技術(shù),字節(jié)碼就會預(yù)先編譯成機(jī)器碼,應(yīng)用的啟動(首次)和執(zhí)行都會變得更加快速。缺點是機(jī)器碼占用的存儲空間更大10-20%,以及安裝時間變長

ART優(yōu)化了GC,以及對內(nèi)存碎片的管理

4.Dalvik虛擬機(jī) java內(nèi)存管理

5.Android新特性

我覺得印象比較深的幾點:1.自適應(yīng)textview 2.自動填充 3.字體 4.通知

http://m.itdecent.cn/p/908bd07b2849

6.開源工具

RxJava RxAndroid

https://gank.io/post/560e15be2dca930e00da1083#toc_1

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容