安裝包(IPA)的主要構(gòu)成
1.可執(zhí)行文件:由源代碼編譯生成的文件
2.資源文件:圖片、音頻、視頻等
可執(zhí)行文件優(yōu)化
1. 編譯器優(yōu)化
-
Strip Linked Product、Make Strings Read-Only、Symbols Hidden by Default設(shè)置為YES - 去掉異常支持
Enable C++ Exceptions、Enable Objective-c Exceptions設(shè)置為NO、Other C Flags添加-fno-exceptions
2. 清除未使用到的類
- 利用AppCode https://www.jetbrains.com/objc/download
檢測未使用的代碼 菜單 -> code -> Inspect Code
3. 編寫LLVM插件檢測出重復(fù)的代碼、未被調(diào)用的代碼
- 實現(xiàn)較難
4.生成LinkMap文件,可以查看可執(zhí)行文件的具體組成
- 在 Xcode的build Settings 中設(shè)置
write Link Map File為Yes 并修改它的輸出路徑 - 借助第三方工具解析LinkMap文件 Github傳送門
5685774-a04b77b13f87652d.png
5. 代碼優(yōu)化
- 減少重復(fù)代碼盡可能的封裝
- 遵守代碼規(guī)范,代碼review后才能能上傳
資源文件優(yōu)化
- 圖片采取無損壓縮(美工提供)
- 去除沒有用到的資源 https://github.com/tinymind/LSUnusedResources
