[發(fā)明專利]基于Android平臺(tái)的通過(guò)列表控件異步加載圖片的優(yōu)化方法在審
| 申請(qǐng)?zhí)枺?/td> | 201410753407.1 | 申請(qǐng)日: | 2014-12-10 |
| 公開(公告)號(hào): | CN104699498A | 公開(公告)日: | 2015-06-10 |
| 發(fā)明(設(shè)計(jì))人: | 李權(quán)宇 | 申請(qǐng)(專利權(quán))人: | 上海斐訊數(shù)據(jù)通信技術(shù)有限公司 |
| 主分類號(hào): | G06F9/445 | 分類號(hào): | G06F9/445 |
| 代理公司: | 上海光華專利事務(wù)所 31219 | 代理人: | 高園園 |
| 地址: | 201616 *** | 國(guó)省代碼: | 上海;31 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 android 平臺(tái) 通過(guò) 列表 控件 異步 加載 圖片 優(yōu)化 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及一種圖片加載的方法,特別是涉及一種基于Android平臺(tái)的通過(guò)列表控件異步加載圖片的優(yōu)化方法。
背景技術(shù)
Android是一種基于Linux的自由及開放源代碼的操作系統(tǒng),主要使用于移動(dòng)設(shè)備,如智能手機(jī)和平板電腦,由Google公司和開放手機(jī)聯(lián)盟領(lǐng)導(dǎo)及開發(fā)。2007年11月,Google與84家硬件制造商、軟件開發(fā)商及電信營(yíng)運(yùn)商組建開放手機(jī)聯(lián)盟共同研發(fā)改良Android系統(tǒng)。隨后Google以Apache開源許可證的授權(quán)方式,發(fā)布了Android的源代碼。第一部Android智能手機(jī)發(fā)布于2008年10月。Android逐漸擴(kuò)展到平板電腦及其他領(lǐng)域上,如電視、數(shù)碼相機(jī)、游戲機(jī)等。2011年第一季度,Android在全球的市場(chǎng)份額首次超過(guò)塞班系統(tǒng),躍居全球第一。2013年的第四季度,Android平臺(tái)手機(jī)的全球市場(chǎng)份額已經(jīng)達(dá)到78.1%。
因此,基于Android平臺(tái)的各種應(yīng)用呈現(xiàn)爆發(fā)式增長(zhǎng),而且移動(dòng)互聯(lián)網(wǎng)的發(fā)展讓更多的應(yīng)用已經(jīng)不僅局限于以前的單機(jī)工具類應(yīng)用,而更趨向于移動(dòng)互聯(lián)網(wǎng)式交互型應(yīng)用。在現(xiàn)有的各類應(yīng)用中,都需要展示服務(wù)端提供的大量圖片文字等信息。因此,列表控件成為一個(gè)必不可少的控件,列表中使用異步加載網(wǎng)絡(luò)圖片也是常用的技術(shù)手段。
現(xiàn)有技術(shù)中,對(duì)網(wǎng)絡(luò)圖片的加載均是通過(guò)調(diào)用系統(tǒng)異步加載方式來(lái)實(shí)現(xiàn)。基本所有的優(yōu)化方案都是針對(duì)網(wǎng)絡(luò)圖片做緩存。
如申請(qǐng)?zhí)枮?01110154365.6、發(fā)明名稱為《通過(guò)控件加載遠(yuǎn)程圖片的方法及系統(tǒng)》的中國(guó)發(fā)明專利中公開一種通過(guò)控件加載遠(yuǎn)程圖片的方法,包括以下步驟:下載遠(yuǎn)程圖片文件;對(duì)所述遠(yuǎn)程圖片文件進(jìn)行解碼,讀取圖片數(shù)據(jù);根據(jù)所述圖片數(shù)據(jù)繪制圖片到控件上。采用該方法,能在Android系統(tǒng)的移動(dòng)終端上,讀取遠(yuǎn)程圖片并展示在用戶界面上。
再比如申請(qǐng)?zhí)枮?01210583612.9、發(fā)明名稱為《基于Android平臺(tái)的圖片加載方法》的中國(guó)發(fā)明專利中公開一種圖片信息加載方法,包括:獲取當(dāng)前界面所需展示的圖片的數(shù)據(jù)信息;根據(jù)所述圖片的縮略圖的數(shù)據(jù)量大小,從小到大下載所述圖片的縮略圖;當(dāng)各個(gè)所述圖片的縮略圖下載完成后,根據(jù)所述圖片的完整圖的數(shù)據(jù)量大小,從小到大下載所述圖片的完整圖。
然而,目前基于Android平臺(tái)的終端設(shè)備中在通過(guò)列表控件異步加載網(wǎng)絡(luò)圖片時(shí)均針對(duì)緩存來(lái)進(jìn)行優(yōu)化,在加載數(shù)量和加載邏輯上卻依然使用了系統(tǒng)的默認(rèn)異步加載方式,并未從?加載數(shù)量和加載邏輯上去進(jìn)行優(yōu)化。
對(duì)于加載邏輯而言,Android系統(tǒng)本身異步加載過(guò)程沒(méi)有問(wèn)題,問(wèn)題在于通過(guò)列表控件異步加載網(wǎng)絡(luò)圖片這種特定情況下就存在一定的不合理。這是因?yàn)椋?dāng)異步操作大于系統(tǒng)設(shè)定的工作線程最大值后,新的異步操作會(huì)加入等待隊(duì)列中,而隊(duì)列又是先進(jìn)先出的方式。這樣的情況會(huì)導(dǎo)致于用戶快速滑動(dòng)列表之后,列表迅速發(fā)起大量的異步請(qǐng)求,此時(shí)列表早已經(jīng)到了下面幾十行,可是線程池中還是依次慢慢一條條執(zhí)行所有的異步請(qǐng)求。等執(zhí)行到幾十行之后時(shí)間和資源都損耗較為嚴(yán)重,造成用戶體驗(yàn)太差。
對(duì)于加載數(shù)量而言,目前Android系統(tǒng)默認(rèn)的異步請(qǐng)求的線程池最大工作線程個(gè)數(shù)24個(gè),由于網(wǎng)絡(luò)帶寬有限,而且手機(jī)對(duì)于列表的展示個(gè)數(shù)通常為6-10個(gè)。為了快速展示圖片到控件上,只需同時(shí)并發(fā)10個(gè)左右即可。因此,控制并發(fā)量也能增加每個(gè)線程的處理能力,同時(shí)減少使用了系統(tǒng)資源。
發(fā)明內(nèi)容
鑒于以上所述現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的目的在于提供一種基于Android平臺(tái)的通過(guò)列表控件異步加載圖片的優(yōu)化方法,在Android平臺(tái)的應(yīng)用中,通過(guò)ListView或GridView或者繼承于此兩類View的列表控件在異步加載圖片時(shí)對(duì)加載邏輯和加載數(shù)量進(jìn)行優(yōu)化,從而解決異步加載圖片時(shí)造成的卡頓或者內(nèi)存溢出等問(wèn)題。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于上海斐訊數(shù)據(jù)通信技術(shù)有限公司;,未經(jīng)上海斐訊數(shù)據(jù)通信技術(shù)有限公司;許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410753407.1/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 一種Android設(shè)備之間遠(yuǎn)程桌面控制的方法
- 一種Android程序的執(zhí)行路徑的還原方法
- 基于ANCS協(xié)議兼容多平臺(tái)的通知消息獲取方法
- 基于字節(jié)碼插樁的Android程序監(jiān)控系統(tǒng)及方法
- 一種減少Android設(shè)備功耗的優(yōu)化方法及裝置
- 一種縮短無(wú)屏Android設(shè)備開機(jī)啟動(dòng)時(shí)間的設(shè)置方法
- 一種基于Android雙系統(tǒng)的系統(tǒng)間通知同步方法
- 基于移動(dòng)操作系統(tǒng)的Android兼容層實(shí)現(xiàn)方法和系統(tǒng)
- 一種Android智能設(shè)備APK安全管控方法
- 一種應(yīng)用程序開發(fā)中創(chuàng)建Android庫(kù)模塊依賴關(guān)系的方法及裝置





