忙碌的項目開發告以段落,現在開始優化,弄的我好久沒寫博客了??。現在主要從包的大小開始優化。之后會陸續從代碼結構上進行優化。
==本文主要闡述如何減少包的大小==
資源文件的優化
首先,找到自己打包后的ipa,然后右鍵,打開方式選擇歸檔實用工具,就會解壓出來一個文件夾,在Payload文件夾中找到當前ipa的app文件(基本就是和這個ipa名字一樣的文件,app后綴系統默認隱藏),右鍵顯示包內容,進入到文件夾內,按照大小進行排序,你會發現所有的資源,首先對圖片進行優化,圖片主要的大小應該維持到200k以內,需要采用無損壓縮。圖片壓縮推薦使用ImageOptim
代碼部分優化
通過appcode 打開對應的工程文件 選擇 Code - > inspect Code 分析代碼,去掉無用的引用及代碼。(appcode真的很強大,連拼寫錯誤都能分析出來,但是就是長的像安卓看起來很丑)
分析可執行文件
- 使用link map
XCode開啟編譯選項Write Link Map File
XCode -> Project -> Build Settings -> 搜map -> 把Write Link Map File選項設為yes
在 編譯后的工程文件夾可以找到 命名為 xxxlinkmapxxx.txt的文件(查找方式為,Winodw - Project - derived data - build - Intermediates -xxx.build - 對應debug或者Release文件下)分析 該txt文件,可以得到項目編譯后各個模塊生成的.o文件在可執行文件中的組成。 - 如何分析
本文采用node + js 的方式分析。 js代碼地址https://gist.github.com/bang590/8f3e9704f1c2661836cd 使用方法,node js路徑 xxlinkmapxxx.txt 路徑 -hl 分析出來 過大的可以考慮縮減和替換。