欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android圖片占用內(nèi)存全面分析

 更新時(shí)間:2014年03月01日 15:03:39   作者:  
這篇文章主要介紹了Android圖片占用內(nèi)存全面分析,需要的朋友可以參考下

曾經(jīng)有一個(gè)朋友問(wèn)過(guò)我一個(gè)問(wèn)題, 一張512*512  150KB PNG格式圖片和一張512*512 100KB 壓縮比是8的JPG格式的圖片,加載到內(nèi)存中,也就是加載到一個(gè)Bitmap中,哪個(gè)占用的內(nèi)存大? 這個(gè)問(wèn)題似乎有點(diǎn)難回答,測(cè)試一下就知道了.

好了,按照要求我準(zhǔn)備了三張圖片,

1. 512*512px, 114KB, PNG

2. 512*512px, 138KB, JPG ,壓縮比 12

3. 512*512px, 57KB, JPG,壓縮比 8

接下來(lái)是寫(xiě)一個(gè)Demo,一個(gè)Bitmap加載不同的圖片,然后使用bitmap.getRowBytes() * bitmap.getHeight();得到圖片的內(nèi)存占用情況.(這么簡(jiǎn)單的程序就不放出來(lái)獻(xiàn)丑了)

得到的數(shù)字居然都是一樣的. 剛好是4MB,為什么是4MB? 512*512*4*2,這么算出來(lái)的,Bitmap默認(rèn)加載使用ARGB_8888,每個(gè)像素會(huì)占用4byte,因?yàn)槊總€(gè)像素有兩個(gè)Chanel.

所以說(shuō), Android圖片占用內(nèi)存大小只 和 圖片分辨率(像素)及色彩模式有關(guān)系.可以參考Bitmap源代碼

復(fù)制代碼 代碼如下:

/**
         * Each pixel is stored on 4 bytes. Each channel (RGB and alpha
         * for translucency) is stored with 8 bits of precision (256
         * possible values.)
         * 
         * This configuration is very flexible and offers the best
         * quality. It should be used whenever possible.
         */ 

今天終于解開(kāi)了我心里的一個(gè)結(jié),以前總以為加載越大的圖片就會(huì)占用得越多.

PS:難道Bitmap渲染是使用OpenGL的嗎?在Debug中看到了以下信息:

這是后來(lái)我加載了一張數(shù)碼相機(jī)拍的照片后看到的.

相關(guān)文章

  • Android 代碼一鍵實(shí)現(xiàn)銀行卡綁定功能

    Android 代碼一鍵實(shí)現(xiàn)銀行卡綁定功能

    這篇文章主要介紹了Android 代碼一鍵實(shí)現(xiàn)銀行卡綁定功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-04-04
  • Android仿微信網(wǎng)絡(luò)加載彈出框

    Android仿微信網(wǎng)絡(luò)加載彈出框

    這篇文章主要為大家詳細(xì)介紹了Android仿微信網(wǎng)絡(luò)加載彈出框,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-06-06
  • Android滑動(dòng)動(dòng)態(tài)分頁(yè)實(shí)現(xiàn)方法

    Android滑動(dòng)動(dòng)態(tài)分頁(yè)實(shí)現(xiàn)方法

    這篇文章主要介紹了Android滑動(dòng)動(dòng)態(tài)分頁(yè)實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了Android實(shí)現(xiàn)滑動(dòng)動(dòng)態(tài)分頁(yè)的操作步驟與核心實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2016-10-10
  • 解析Android應(yīng)用啟動(dòng)后自動(dòng)創(chuàng)建桌面快捷方式的實(shí)現(xiàn)方法

    解析Android應(yīng)用啟動(dòng)后自動(dòng)創(chuàng)建桌面快捷方式的實(shí)現(xiàn)方法

    和IOS開(kāi)發(fā)和Windows Phone開(kāi)發(fā)相比,Android是開(kāi)放的,Android上的開(kāi)發(fā)也相對(duì)更加靈活,能夠做很多事情。有的朋友會(huì)發(fā)現(xiàn),在某些Android應(yīng)用安裝以后,第一次運(yùn)行,就會(huì)在桌面創(chuàng)建快捷方式。這是如何做到的呢
    2013-05-05
  • Android WebView實(shí)現(xiàn)文件下載功能

    Android WebView實(shí)現(xiàn)文件下載功能

    這篇文章主要為大家詳細(xì)介紹了Android WebView實(shí)現(xiàn)文件下載功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • Android自定義荷載進(jìn)度的兩種方法

    Android自定義荷載進(jìn)度的兩種方法

    進(jìn)度條在App中非常常見(jiàn),例如下載進(jìn)度、加載圖片、打開(kāi)文章、打開(kāi)網(wǎng)頁(yè)等等……本篇文章主要介紹了Android自定義荷載進(jìn)度的兩種方法,有需要的朋友可以了解一下。
    2016-10-10
  • ViewPager 滑動(dòng)一半的判斷方法以及左滑右滑判斷實(shí)例

    ViewPager 滑動(dòng)一半的判斷方法以及左滑右滑判斷實(shí)例

    下面小編就為大家?guī)?lái)一篇ViewPager 滑動(dòng)一半的判斷方法以及左滑右滑判斷實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-04-04
  • 移動(dòng)端使用CSS或JS判斷橫屏和豎屏的講解

    移動(dòng)端使用CSS或JS判斷橫屏和豎屏的講解

    今天小編就為大家分享一篇關(guān)于移動(dòng)端使用CSS或JS判斷橫屏和豎屏的講解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-03-03
  • Android應(yīng)用開(kāi)發(fā)之代碼混淆

    Android應(yīng)用開(kāi)發(fā)之代碼混淆

    Android項(xiàng)目中的混淆很easy,之所以寫(xiě)這篇總結(jié)是由于近期發(fā)現(xiàn)公司的代碼居然沒(méi)有混淆,反編譯后代碼隨手可得。很震驚。
    2014-07-07
  • Android利用ZXing掃描二維碼的實(shí)例代碼解析

    Android利用ZXing掃描二維碼的實(shí)例代碼解析

    這篇文章主要介紹了Android利用ZXing掃描二維碼的實(shí)例解析,代碼簡(jiǎn)單易懂,非常不錯(cuò),需要的朋友可以參考下
    2016-12-12

最新評(píng)論