<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      iOS IPA體積優(yōu)化

       
      1. 需求背景

      主要是整體的安裝包體積太大產(chǎn)生了一些差評(píng),另外在構(gòu)建時(shí)長(zhǎng)和上傳時(shí)長(zhǎng)越來(lái)越長(zhǎng)。
      IPA包大小:
      下圖是App安裝包在常見(jiàn)設(shè)備的安裝大?。?/div>
      1. 問(wèn)題原因:

      1. 代碼邏輯問(wèn)題

      1、通過(guò)解壓將IPA改成zip格式,然后解壓處理的payload文件。通過(guò)右鍵選擇 show package contents,可以進(jìn)入到IPA文件下。
      2、打開(kāi)終端,cd 上面文件夾下,通過(guò)終端 $ du -sh * | sort -rh 可以查看文件夾下所以文件大小排序。
      可以先看到未優(yōu)化前的文件排序如下:
      可以看到1.5G的IPA包,PlugIns文件夾獨(dú)占了800+M,到這里基本可以確定這個(gè)文件夾一定是有什么異常的,再進(jìn)入PlugIns文件夾下,這里是我們應(yīng)用的擴(kuò)展程序,如widget,sirishortcut,watch App
      再右鍵去查看today.appex的package contents如下,發(fā)現(xiàn)里面竟然也有一個(gè)assets.car,而且獨(dú)占200+M的大小。到這里基本上可以定位問(wèn)題原因了。
      編譯時(shí)間:

      原因總結(jié)

      1. 我們的擴(kuò)展程序因?yàn)閭€(gè)別的圖片共用了Switchbot主工程的圖片資源,所以也將Images.xcimage文件拷貝到了自己的target下面。或者干脆直接存在了Images.xcimage里面。導(dǎo)致多個(gè)target都拷貝了Images.xcimage文件,所以這里白白多了幾百M(fèi)的大小。
      2. 另外關(guān)于國(guó)際化部分?jǐn)U展程序也引用了Switchbot的文件,目前這個(gè)文件也有1.6M,后續(xù)隨著語(yǔ)種的增加也是會(huì)增加不少的包體積。 --- 待優(yōu)化
       

      優(yōu)化過(guò)程

      testFlight 包
      已優(yōu)化的的文件排序如下:
       
      PlugIns文件夾優(yōu)化后
      編譯時(shí)間優(yōu)化后
      1. 本地資源原因

      PNG圖片轉(zhuǎn)webp方案對(duì)比

      另外,webp還支持動(dòng)圖

      項(xiàng)目圖片大小分布

       

      轉(zhuǎn)換方案

      iOS目前是的圖片有1x,2x,3x,GIF等。替換步驟
      1. 圖片轉(zhuǎn)換
        1. 對(duì)于PNG格式的圖片可使用到了谷歌的工具h(yuǎn)ttps://developers.google.com/speed/webp/docs/cwebp一鍵轉(zhuǎn)換。
      2. 刪除原有png源文件
      3. 導(dǎo)入第一步轉(zhuǎn)換的webp圖片
      4. 封裝統(tǒng)一加載圖片的方法

      影響范圍

      因涉及修改除App桌面圖標(biāo),啟動(dòng)頁(yè)圖片,watch,widget,GIF,Lottie(動(dòng)圖)外的所有圖片,所以整體影響范圍包含了App絕大部分的頁(yè)面。

      風(fēng)險(xiǎn)點(diǎn)

      1. 顯示圖片大小比例不正常

          原因:圖片原始比例是2x,3x,加載圖片大小是1x大小。但轉(zhuǎn)成webp后,考慮webp圖片清晰度的問(wèn)題,所有webp圖片優(yōu)先使用的3x的png轉(zhuǎn)換的。所以加載后的圖片大小變成了原來(lái)的3倍。
        1. 需要對(duì)控件設(shè)置frame,或通過(guò)snapKit設(shè)置布局
      1. UIButton圖片大小比例不正常

      UIButton的frame設(shè)置40x40,但是實(shí)際圖片大小可能是超過(guò)40x40,這是即使設(shè)置了大小,圖片仍然是比例不正常的。
      • 通過(guò)wo_setImage接口的設(shè)置圖片的,可以默認(rèn)給button添加一個(gè)屬性,在layoutSubviews,跟進(jìn)圖片大小自動(dòng)縮小一倍。
      • 給UIButton 新增一個(gè)方法,來(lái)設(shè)置圖片大小問(wèn)題。
      • 自定義一個(gè)UIButton類(lèi),統(tǒng)一處理。
      • wo_setImage 壓縮三倍再返回圖片。---- 無(wú)用,resize后清晰度完全不夠用
      • 在Mac上統(tǒng)一處理一次,需要第一次轉(zhuǎn)換webp后,根據(jù)圖片名稱包含3x,2x的,轉(zhuǎn)成一倍的圖片再導(dǎo)入。---- 無(wú)用,resize后清晰度完全不夠用
      1. 代碼加載的圖片缺失

        • 使用UIImage(named:xxx) 方法加載的圖片,可以改成使用UIImage.initWebpImage方法?;蚴褂脀o_setIamge方法加載圖片。
        • webp圖片缺失,需要導(dǎo)入下webp文件
      1. Xib 加載的圖片缺失

        1. 需要手動(dòng)通過(guò)代碼設(shè)置一下圖片,并注意第1點(diǎn)和第2點(diǎn)問(wèn)題
      1. 新需求的圖片導(dǎo)入

        1. 可直接在藍(lán)湖導(dǎo)入webp格式圖片,然后復(fù)制到supportFiles/Image/ImageResources.bundle下面
       

      6.18版本 替換curtain 添加圖文教程所有圖片后

      IPA 大小 425.9M,解壓后大小655.4M。
       
       
      1. 總結(jié):

      內(nèi)測(cè)包第一階段優(yōu)化

      優(yōu)化代碼邏輯問(wèn)題
      1. IPA文件從 1.24G減少至488.2M,優(yōu)化61.5%
      2. 解壓后SwitchBot.app文件從1.5G減少至835M,優(yōu)化45%
      3. 整體編譯時(shí)間從428s減少到312s,優(yōu)化27%,其中Asset文件編譯時(shí)間從643s,優(yōu)化之133s, 優(yōu)化79%

      內(nèi)測(cè)包第二階段優(yōu)化

      優(yōu)化本地圖片資源問(wèn)題:
      1. IPA文件從 488.2M減少至270M,優(yōu)化44%
      2. 編輯速度未統(tǒng)計(jì)

      整體優(yōu)化成果

      • 內(nèi)測(cè)包大?。航刂沟侥壳白钚?.5版本,IPA的包提交從6.17版本1.24G減少至7.5版本270M,優(yōu)化78%
      • appstore包大?。夯谧钚耰Phone 14上的數(shù)據(jù),優(yōu)化前6.17版本下載體積489 MB ,安裝體積722 MB。優(yōu)化后版本7.5版本下載體積236 MB ,安裝體積498 MB。下載體積優(yōu)化253M約52%,安裝體積優(yōu)化224M約32%。
      • 編譯速度:整體編譯時(shí)間從428s減少到312s,優(yōu)化27%,其中Asset文件編譯時(shí)間優(yōu)化79%。
      posted @ 2024-12-05 16:30  朝陽(yáng)向日葵  閱讀(165)  評(píng)論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 简阳市| 狠狠躁日日躁夜夜躁欧美老妇 | 久久婷婷五月综合色欧美| 亚洲香蕉伊综合在人在线| аⅴ天堂中文在线网| 免费无码成人AV片在线| 马公市| 精品偷自拍另类精品在线| 精品少妇av蜜臀av| 久久亚洲人成网站| 夜夜添无码一区二区三区| 中文字幕无码不卡在线| 国产精品点击进入在线影院高清 | 亚洲性日韩精品一区二区| 啦啦啦高清在线观看视频www| 中超| 国产农村乱人伦精品视频| 91中文字幕一区在线| 成年入口无限观看免费完整大片 | 国产超碰人人做人人爰| 亚洲av成人一区二区三区| 蜜桃视频在线免费观看一区二区 | 免费一区二区无码东京热| 精品国产一区二区三区av色诱| 国产精品一区二区三区91| 国产精品理论片在线观看| 成人午夜在线观看刺激| 日本高清视频网站www| 国产成人一区二区三区免费| 亚洲性无码av在线| 亚洲www永久成人网站| 国产精品夫妇激情啪发布| 精品熟女少妇免费久久| 97国产成人无码精品久久久| 国产伦一区二区三区视频| 色欲色香天天天综合网站免费| 午夜DY888国产精品影院| 中文字幕无码视频手机免费看| 动漫精品中文字幕无码| 国产精品中文字幕综合| 国产精品美女一区二三区|