被遺忘的Android mipmaps簡介

被遺忘的 Android mipmaps 簡介

【導(dǎo)讀】已經(jīng)發(fā)布的 Android Studio1.1 版本是一個(gè) bug 修復(fù)版本挡逼。在這個(gè)版本中掌桩,當(dāng)你創(chuàng)建工程時(shí)一項(xiàng)改變將會吸引你的眼球碰镜。工程創(chuàng)建登陸的圖標(biāo)會在 mipmap-resource 文件夾中玛荞,而不是 drawable 文件夾中梦抢。

使用 mipmap 文件夾存放啟動圖標(biāo)的好處

Android 開發(fā)團(tuán)隊(duì)認(rèn)為使用 mipmap 文件夾保存啟動圖標(biāo)是最佳的開發(fā)方式呢岗。使用 mipmap 的最大優(yōu)勢是你可以在各種屏幕密度的設(shè)備下將資源存儲在 mipmap 文件夾下,然后對于特定屏幕密度的設(shè)備你可以從 drawable 文件夾下去除掉與這個(gè)特定設(shè)備無關(guān)的資源信息。

我們用一個(gè)例子來說明這一特性汉形。假設(shè)用戶有一個(gè)設(shè)備被標(biāo)識為xxhdpi的設(shè)備纸镊,那么開發(fā)者 apk 中的 drawable 文件夾下的其他分辨率大小的資源,例如 xxxhdpi 分辨率概疆,就是不被需要的逗威;換句話說,就是可以被去除掉的岔冀。然而應(yīng)用圖標(biāo)很可能是與其他資源圖片不同的凯旭,因?yàn)樗赡苷紦?jù)整個(gè)屏幕,因此你可能需要啟動圖標(biāo)的分辨率高于其他資源使套。而這時(shí)你為了設(shè)備適配的原因罐呼,高分辨率圖片所在的文件夾已經(jīng)被你去除了,這時(shí)當(dāng)程序運(yùn)行時(shí)侦高,系統(tǒng)會將原來低分辨率的圖片進(jìn)行拉伸嫉柴,然而這種做法可能會導(dǎo)致產(chǎn)生一個(gè)丑陋的模糊的圖片。

另一方面奉呛,你可能會說计螺,你并不會使用去除資源來減少 apk 大小的方式去制作不同版本的 apk 文件。這個(gè)時(shí)候你用 mipmap 文件夾去存儲登陸圖標(biāo)看上去不會產(chǎn)生任何意義侧馅。然而這并不意味著你不應(yīng)該使用它危尿,最好的使用它的理由莫過于 Android 開發(fā)團(tuán)隊(duì)認(rèn)為應(yīng)該使用它,并且把它描述為了開發(fā)的最佳實(shí)踐馁痴。他們知道在 Android 的開發(fā)線上將會產(chǎn)生什么樣的新特性谊娇,而且盡管沒有人能確定,但是 Android 開發(fā)團(tuán)隊(duì)很可能計(jì)劃引入這樣一個(gè)新特性罗晕,就是在用戶下載 App 的時(shí)候济欢,apk 會自動丟棄掉不合適的資源文件

Android 登陸 mipmap 的歷史

在 Android 中 mipmap 資源文件夾很早就出現(xiàn)了,這個(gè)時(shí)間點(diǎn)遠(yuǎn)遠(yuǎn)早于他被介紹為應(yīng)該作為 Android 開發(fā)社區(qū)應(yīng)該大規(guī)模使用它的時(shí)間小渊。Android 的官方團(tuán)隊(duì)并沒有發(fā)布過多的原因來說明為什么要使用 mipmap 資源文件夾法褥。在 Android 4.3 版本發(fā)布的時(shí)候,Android 框架的卡法人員 hackbod 宣布: 假如你正在為不同屏幕分辨率版本的設(shè)備制作不同版本的 app酬屉,那么你應(yīng)該去了解 mipmap 資源文件夾半等,它與 drawable 文件夾確實(shí)是驚人的相似,除了它并不參與屏幕適配在你生成不同版本的目標(biāo) apk 時(shí)呐萨。 自從這個(gè)宣布之后杀饵,如果你仔細(xì)觀察 Google 的產(chǎn)品,你會發(fā)現(xiàn)一些 app 確實(shí)這樣做了谬擦。效果是在展示時(shí)切距,僅僅只是向屏幕傳輸了所被需要的分辨率的圖標(biāo),但是各種分辨率的登陸圖標(biāo)都別保存到了 mipmap 資源文件夾下惨远。 隨著時(shí)間的推進(jìn)谜悟,并沒有過多關(guān)于使用 mipmap 資源文件夾保存登陸圖片的消息话肖,知道 Android 5.0 出現(xiàn)在 AOSP 以及 Nexus 設(shè)備出現(xiàn)在了市場上。Android 開發(fā)者的博客上標(biāo)出了準(zhǔn)備好讓你的 app 登陸 Nexus6 和 Nexus9. 這篇博文透露了一個(gè)應(yīng)該使用 mipmap 文件夾的理由: 提供分辨率至少為 xxxhpdi 的app 圖標(biāo)因?yàn)樯肀晨梢哉故靖蟮膱D標(biāo)在登陸的時(shí)刻葡幸。最好的方法就是見app圖標(biāo)放在 mipmap 文件夾下因?yàn)樗麑鶕?jù)屏幕分辨率以及使用場景選擇合適分辨率的圖片最筒。例如 xxxhdpi 的圖標(biāo)將會被展示在 xxhdpi 分辨率的設(shè)備上

使用 mipmap 創(chuàng)建 Android 工程

更新 Android Studio 到最新版本,任何一個(gè)新的工程都將會使用 mipmap 的方式創(chuàng)建礼患。

將現(xiàn)有的工程改變?yōu)槭褂?mipmap 文件夾

假如你有一個(gè)優(yōu)秀的工具 Android Asset Studio 去產(chǎn)生你的 Android 登陸圖標(biāo)是钥,你會注意到 mipmap 的改變已經(jīng)被 assets 文件夾產(chǎn)生的結(jié)構(gòu)所反映出來。 你的 assets 應(yīng)該變得像之前的登陸圖標(biāo)的結(jié)構(gòu)那樣缅叠。res/ mipmap-mdpi/iclauncher.png (48x48 pixels) mipmap-hdpi/iclauncher.png (72x72) mipmap-xhdpi/iclauncher.png (96x96) mipmap-xxhdpi/iclauncher.png (144x144) mipmap-xxxhdpi/iclauncher.png (192x192) 同時(shí)你要改變你的 AndroidManifest.xml 文件去使用 mipmap 作為啟動圖標(biāo): android:icon="@mipmap/iclauncher"

OneAPM 是應(yīng)用性能管理領(lǐng)域的新興領(lǐng)軍企業(yè)悄泥。Mobile Insight 能以用戶真實(shí)使用感受為度量標(biāo)準(zhǔn),檢測每次崩潰的發(fā)生肤粱,協(xié)助監(jiān)控移動應(yīng)用性能弹囚。想閱讀更多技術(shù)文章,請?jiān)L問 OneAPM 官方博客领曼。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末鸥鹉,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子庶骄,更是在濱河造成了極大的恐慌毁渗,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,948評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件单刁,死亡現(xiàn)場離奇詭異灸异,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)羔飞,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評論 3 385
  • 文/潘曉璐 我一進(jìn)店門肺樟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人逻淌,你說我怎么就攤上這事么伯。” “怎么了卡儒?”我有些...
    開封第一講書人閱讀 157,490評論 0 348
  • 文/不壞的土叔 我叫張陵田柔,是天一觀的道長。 經(jīng)常有香客問我骨望,道長硬爆,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,521評論 1 284
  • 正文 為了忘掉前任锦募,我火速辦了婚禮摆屯,結(jié)果婚禮上邻遏,老公的妹妹穿的比我還像新娘糠亩。我一直安慰自己虐骑,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,627評論 6 386
  • 文/花漫 我一把揭開白布赎线。 她就那樣靜靜地躺著廷没,像睡著了一般。 火紅的嫁衣襯著肌膚如雪垂寥。 梳的紋絲不亂的頭發(fā)上颠黎,一...
    開封第一講書人閱讀 49,842評論 1 290
  • 那天,我揣著相機(jī)與錄音滞项,去河邊找鬼狭归。 笑死,一個(gè)胖子當(dāng)著我的面吹牛文判,可吹牛的內(nèi)容都是我干的过椎。 我是一名探鬼主播,決...
    沈念sama閱讀 38,997評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼戏仓,長吁一口氣:“原來是場噩夢啊……” “哼疚宇!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起赏殃,我...
    開封第一講書人閱讀 37,741評論 0 268
  • 序言:老撾萬榮一對情侶失蹤敷待,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后仁热,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體榜揖,經(jīng)...
    沈念sama閱讀 44,203評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,534評論 2 327
  • 正文 我和宋清朗相戀三年股耽,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了根盒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,673評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡物蝙,死狀恐怖炎滞,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情诬乞,我是刑警寧澤册赛,帶...
    沈念sama閱讀 34,339評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站震嫉,受9級特大地震影響森瘪,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜票堵,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,955評論 3 313
  • 文/蒙蒙 一扼睬、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦窗宇、人聲如沸措伐。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,770評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽侥加。三九已至,卻和暖如春粪躬,著一層夾襖步出監(jiān)牢的瞬間担败,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,000評論 1 266
  • 我被黑心中介騙來泰國打工镰官, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留提前,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,394評論 2 360
  • 正文 我出身青樓泳唠,卻偏偏與公主長得像岖研,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子警检,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,562評論 2 349

推薦閱讀更多精彩內(nèi)容