Building a better Instagram app for Android
這篇博客主要從兩個(gè)方面來(lái)優(yōu)化Instagram的性能:產(chǎn)品設(shè)計(jì) 和 啟動(dòng)時(shí)間囱怕。
經(jīng)驗(yàn):
極簡(jiǎn)設(shè)計(jì)
盡量使用純色的設(shè)計(jì)取代漸變的圖片資源切省。在屏幕上繪制純色要比從磁盤(pán)上加載漸變的圖片更節(jié)約內(nèi)存資源,從而獲得更快的性能尚氛。
改善啟動(dòng)時(shí)間
Keypoint:
- TraceView 發(fā)現(xiàn)耗時(shí)運(yùn)行的代碼
- Lazy-loading 延遲加載不需要啟動(dòng)時(shí)所需的資源
- 重寫(xiě)解析Json 的耗時(shí)代碼
- Newsview,顯示所有的喜好和評(píng)論,最初作為webview編寫(xiě)既绩。它需要在啟動(dòng)時(shí)加載,以便盡可能快的顯示用戶數(shù)據(jù)还惠。
問(wèn)題是webview有自己的緩存系統(tǒng)饲握,無(wú)法控制。
轉(zhuǎn)換到Native實(shí)現(xiàn)蚕键,本地轉(zhuǎn)換后的冷啟動(dòng)時(shí)間減少了30%救欧。