欧美日韩激情_美女国产一区_国产精品久久久久影院日本_69xxx在线

20條app性能制作的建議

2021-04-04    分類: 網(wǎng)站建設(shè)

注:你的app為什么會卡?為什么占用大內(nèi)存?應(yīng)該怎么解決?這篇文章會給你答案。

20 條建議
1. itmap的合理使用:使用bitmap過后,就需要及時的調(diào)用recycle()方法來釋放bitmap占用的內(nèi)存空間,而不要等android系統(tǒng)來進行釋放。
代碼示例:
// 先判斷是否已經(jīng)回收
if(bitmap != null && !bitmap.isrecycled()){
bitmap.recycle();
bitmap = null;
}
system.gc();
2. 對常量使用static final修飾符
static final int intval = 42;
static final string strval = “hello, world!”;
將一個方法或類聲明為final不會帶來性能的提升,但是會幫助編譯器制作代碼。舉例說,如果編譯器知道一個getter方法不會被重載,那么編譯器會對其采用內(nèi)聯(lián)調(diào)用。

3. 靜態(tài)方法代替虛擬方法
如果不需要訪問某對象的字段,將方法設(shè)置為靜態(tài),調(diào)用會加速15%到20%。這也是一種好的做法,因為你可以從方法聲明中看出調(diào)用該方法不需要更新此對象的狀態(tài)。
4. 減少不必要的全局變量
盡量避免static成員變量引用資源耗費過多的實例,比如context,因為context的引用超過它本身的生命周期,會導(dǎo)致context泄漏。所以盡量使用application這種context類型。 可以通過調(diào)用context.getapplicationcontext()或 activity.getapplication()輕松得到application對象。
5. 避免創(chuàng)建不必要的對象: 就是避免創(chuàng)建短命的臨時對象。減少對象的創(chuàng)建就能減少垃圾收集,進而減少對用戶體驗的影響。
例如:頻繁操作一個字符串時,使用stringbuffer代替string。
對于所有所有基本類型的組合:int數(shù)組比integer數(shù)組好,這也概括了一個基本事實,兩個平行的int數(shù)組比 (int,int)對象數(shù)組性能要好很多。.避免使用浮點數(shù)
通常的經(jīng)驗是,在android設(shè)備中,浮點數(shù)會比整型慢兩倍。
7. 使用實體類比接口好
假設(shè)你有一個hashmap對象,你可以將它聲明為hashmap或者map:
map map1 = new hashmap();
hashmap map2 = new hashmap();
哪個更好呢?
按照傳統(tǒng)的觀點map會更好些,因為這樣你可以改變他的具體實現(xiàn)類,只要這個類繼承自map接口。傳統(tǒng)的觀點對于傳統(tǒng)的程序是正確的,但是它并不適合嵌入式系統(tǒng)。調(diào)用一個接口的引用會比調(diào)用實體類的引用多花費一倍的時間。如果hashmap完全適合你的程序,那么使用map就沒有什么價值。如果有些地方你不能確定,先避免使用map,剩下的交給ide提供的重構(gòu)功能好了。(當(dāng)然公共api是一個例外:一個好的api常常會犧牲一些性能)
8. 訪問成員變量比訪問本地變量慢得多
for循環(huán):不要在for的第二個條件中調(diào)用任何方法
反例:for(int i =0; i < this.getcount(); i++) {}
正例:int count = this.mcount;  int count = this.getcount();
for(int i =0; i < count; i++)  {
}
9. 資源類對象在不使用的時候,應(yīng)該及時關(guān)閉它們,方便它們的緩存數(shù)據(jù)能夠及時回收。
例如:cursor、file文件等都需要在finally中關(guān)閉資源性對象,避免在異常情況下資源對象未被釋放的隱患
10. 注冊廣播接收器、注冊觀察者等需要在不使用的時候取消注冊。
例如:假設(shè)在activity中,監(jiān)聽系統(tǒng)的電話服務(wù),可以在activity中定義一個phonestatelistener的對象,同時將它注冊到telephonemanager服務(wù)中。對于activity對象,理論上要求activity退出后該activity的對象就會被釋放掉。但是如果在釋放activity對象時,忘記取消之前注冊的phonestatelistener對象,則會導(dǎo)致activity無法被gc回收。如果不斷的進出這個activity,則最終會由于大量的activity對象沒有辦法被回收而引起頻繁的gc情況,甚至導(dǎo)致out of memory。
11. 有效的利用系統(tǒng)自帶的資源,android系統(tǒng)內(nèi)置了大量的資源,比如字串、顏色定義、常用icon圖片、動畫樣式、及簡單的布局,沒有特殊要求,資源可以在程序中直接引用。這樣不僅減少內(nèi)存的開銷,還可以減少apk的大小。
12. 視圖復(fù)用,使用viewholder實現(xiàn)convertview復(fù)用,這基本上是所有容器控件的處理方式,如listview、gridview等。
13. 使用最優(yōu)的數(shù)據(jù)類型,比較少的對象數(shù)時,arraymap替換hashmap的使用,避免使用枚舉,枚舉變量非常方便,但不幸的是它會犧牲執(zhí)行的速度和并大幅增加文件體積。
14. 圖片內(nèi)存制作
android提供的多種位圖格式中,高的是rgb_8888,也是系統(tǒng)默認(rèn)的位圖格式,其他幾種都減少位圖通道,可以減少內(nèi)存開銷,如一些局部圖片、小屏幕手機或者對圖片質(zhì)量要求不高的場景,均可以使用rgb_565,或者argb_ 4444 等圖像格式。
圖片縮放:insamplesize、inscaled、indensity和intargetdensity
位圖內(nèi)存重用:inbitmap的使用,可以結(jié)合lrucache實現(xiàn)。
推薦開源庫:picasso、glide
15. android 網(wǎng)絡(luò)通信框架volley。
16. 對象池、線程池的合理使用。
17. 使用intentservice替代service。
intentservice優(yōu)勢:新開線程;順序處理intent;執(zhí)行完自動退出。
18. 盡量不要因一兩個特性而使用大體積類庫。
19. 對象不用時最好顯式置為null可以減少gc開銷。
20. 多了解并使用類庫。

分享題目:20條app性能制作的建議
標(biāo)題路徑:http://m.kartarina.com/news19/106419.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷網(wǎng)站維護做網(wǎng)站用戶體驗定制開發(fā)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名
欧美日韩激情_美女国产一区_国产精品久久久久影院日本_69xxx在线
国产精品久久夜| 国产一区二区视频在线播放| 久久无码av三级| 欧美日韩另类一区| 欧美在线视频不卡| 色婷婷一区二区| 成人午夜电影网站| 国产麻豆91精品| 大白屁股一区二区视频| 亚洲综合免费观看高清完整版在线 | 亚洲国产精品黑人久久久| 在线不卡欧美精品一区二区三区| 91黄色在线观看| 一本久久综合亚洲鲁鲁五月天| 99久久国产综合精品麻豆| 99视频精品免费视频| 99久久久精品| 色综合欧美在线视频区| 在线亚洲一区二区| 在线免费观看不卡av| 欧美人体做爰大胆视频| 日韩欧美在线一区二区三区| 精品美女一区二区| 国产精品天美传媒| 亚洲国产人成综合网站| 日韩黄色小视频| 懂色av一区二区在线播放| 成人午夜电影网站| 不卡在线视频中文字幕| 色婷婷av久久久久久久| 4438x成人网最大色成网站| 精品成a人在线观看| 中文一区二区在线观看| 亚洲国产欧美在线| 国产伦精品一区二区三区免费迷 | 欧美一区二区三区在线电影| 精品国产制服丝袜高跟| 成人欧美一区二区三区小说 | 欧美日韩国产影片| 久久综合九色综合97_久久久| 中文在线一区二区| 日韩经典一区二区| 成人午夜激情视频| 91精品免费观看| 亚洲天天做日日做天天谢日日欢| 天堂成人国产精品一区| 成人精品国产福利| 精品国产91亚洲一区二区三区婷婷| 日韩精品一区二区三区四区| 国产精品九色蝌蚪自拍| 亚洲制服丝袜av| 成人在线视频一区| 日韩一区二区在线看片| 亚洲欧美一区二区三区久本道91 | 亚洲欧洲日产国产综合网| 蜜桃av一区二区三区电影| 色先锋资源久久综合| 国产亚洲1区2区3区| 青青草伊人久久| 成人永久看片免费视频天堂| 欧美大片在线观看| 无吗不卡中文字幕| 国产成人超碰人人澡人人澡| 色综合一区二区三区| 亚洲欧美成aⅴ人在线观看| 91看片淫黄大片一级| 亚洲欧洲成人精品av97| 麻豆精品国产传媒mv男同| 亚洲三级电影全部在线观看高清| 99久久国产综合精品女不卡| 蜜桃在线一区二区三区| 欧美视频一区在线| ...xxx性欧美| 色国产精品一区在线观看| 欧美zozozo| 成人一区在线观看| 国内精品伊人久久久久av影院 | 国产成人免费高清| 欧美伦理视频网站| 亚洲第一激情av| 91猫先生在线| 三级亚洲高清视频| 亚洲欧美二区三区| 国产成人精品免费在线| 国产精品夫妻自拍| 国产精品传媒视频| 欧美精品一区二区在线观看| 欧美亚洲日本一区| 欧美aa在线视频| 中文字幕欧美一| 欧美成人乱码一区二区三区| 欧美一级日韩不卡播放免费| 欧美色网一区二区| 色婷婷综合久久久中文字幕| 高清国产午夜精品久久久久久| 亚洲精品国产精华液| 日韩午夜av一区| 国产91对白在线观看九色| 免费人成在线不卡| 国产高清无密码一区二区三区| 久久精品国产99久久6| 国产一区二区三区精品欧美日韩一区二区三区 | 亚洲国产精品综合小说图片区| 久久久国产一区二区三区四区小说| 成人福利在线看| 无码av免费一区二区三区试看 | 麻豆91在线播放免费| 亚洲综合偷拍欧美一区色| 欧美怡红院视频| 午夜精品久久一牛影视| 亚洲欧美日韩国产手机在线 | 色美美综合视频| 日韩亚洲欧美一区| 欧美激情一区二区三区不卡| 美女精品一区二区| 不卡一二三区首页| 91麻豆高清视频| 欧美mv日韩mv亚洲| 国产精品自产自拍| 夜色激情一区二区| 精品电影一区二区| 色婷婷国产精品综合在线观看| 亚洲综合一二区| 久久精品人人做人人爽97| 免费精品视频在线| 日韩欧美电影在线| 国产最新精品免费| 制服.丝袜.亚洲.另类.中文| 久久久久久久久伊人| 石原莉奈一区二区三区在线观看 | 日韩激情一区二区| 国产综合久久久久影院| 欧美视频在线播放| 亚洲国产一区二区三区青草影视| 婷婷综合五月天| 福利一区二区在线观看| 欧美色老头old∨ideo| 亚洲午夜精品网| 狠狠网亚洲精品| 欧美成人a∨高清免费观看| 精品一区二区三区久久久| 国产精品麻豆一区二区| 欧美午夜免费电影| 成人福利视频在线看| 视频一区中文字幕| 一区二区三区四区国产精品| 国产午夜精品一区二区三区四区| 欧美日韩一区精品| 91福利在线导航| 一本久久精品一区二区| 欧美日韩在线亚洲一区蜜芽| 久久久蜜桃精品| 97久久人人超碰| 丁香另类激情小说| 99久久婷婷国产综合精品| 亚洲在线观看免费| 亚洲精品成人精品456| 国产精品毛片无遮挡高清| 久久久久国产精品麻豆ai换脸| 欧美大片拔萝卜| 久久免费午夜影院| 国产欧美日韩综合| 国产精品初高中害羞小美女文| 国产精品电影院| 久久se精品一区二区| 亚洲国产精品久久不卡毛片| 亚洲乱码国产乱码精品精小说| 一色桃子久久精品亚洲| 亚洲啪啪综合av一区二区三区| 亚洲人123区| 日一区二区三区| 久久69国产一区二区蜜臀| 国产精品白丝av| 福利一区福利二区| 色天使久久综合网天天| 欧洲精品视频在线观看| 欧美日韩国产片| 欧美电影免费观看完整版| 精品88久久久久88久久久| 国产区在线观看成人精品| 国产精品不卡视频| 一区二区三区日韩精品| 蜜桃一区二区三区在线| 国产白丝网站精品污在线入口| 色哟哟一区二区| 日韩欧美一区二区免费| 国产精品免费av| 午夜精品福利一区二区三区av | 国产欧美一区二区精品性色 | 污片在线观看一区二区| 激情六月婷婷久久| 成人av手机在线观看| 欧美蜜桃一区二区三区| 2024国产精品| 亚洲综合另类小说| 成人一区在线看| 日韩一级二级三级| 中文字幕一区二区三区av| 天堂成人免费av电影一区| 成人app网站|