響應(yīng)時(shí)間優(yōu)化
1向臀、網(wǎng)絡(luò)請(qǐng)求 使用優(yōu)秀的網(wǎng)絡(luò)框架庫(kù)來(lái)提高請(qǐng)求速度 比如retrofit巢墅、okhttp
2、數(shù)據(jù)解析 推薦json 使用優(yōu)秀的解析庫(kù)來(lái)加快我們的解析速度券膀,比如 Jackson君纫、Gson
3、數(shù)據(jù)緩存 推薦使用三級(jí)緩存 內(nèi)存緩存+本地?cái)?shù)據(jù)庫(kù)+網(wǎng)絡(luò)請(qǐng)求
界面卡頓優(yōu)化
1芹彬、避免UI主線程做耗時(shí)操作蓄髓,耗時(shí)操作交給子線程完成,如需更新則使用handler
2舒帮、優(yōu)化布局層級(jí)会喝,避免過(guò)多無(wú)用嵌套陡叠,Android 通知界面渲染和重繪的時(shí)間要在16ms內(nèi)完成,超出這個(gè)時(shí)間會(huì)導(dǎo)致丟幀肢执⊥髡螅可以使用Hierarchy View進(jìn)行層級(jí)分析。
內(nèi)存優(yōu)化
創(chuàng)建新的對(duì)象都需要額外的內(nèi)存空間蔚万,要盡量減少創(chuàng)建新的對(duì)象岭妖。
將類、變量反璃、方法等等的可見(jiàn)性修改為最小。
針對(duì)字符串的拼接假夺,使用StringBuffer替代String淮蜈。
不要在循環(huán)當(dāng)中聲明臨時(shí)變量,不要在循環(huán)中捕獲異常已卷。
如果對(duì)于線程安全沒(méi)有要求梧田,盡量使用線程不安全的集合對(duì)象。
使用集合對(duì)象侧蘸,如果事先知道其大小裁眯,則可以在構(gòu)造方法中設(shè)置初始大小。
文件讀取操作需要使用緩存類讳癌,及時(shí)關(guān)閉文件穿稳。
慎用異常,使用異常會(huì)導(dǎo)致性能降低晌坤。
如果程序會(huì)頻繁創(chuàng)建線程逢艘,則可以考慮使用線程池。