這幾天被靜態庫的大小給嚇到了,新增了非常多的功能後導致包體達到了60m,這肯定是無法忍受的。網上搜尋了幾個比較好用的方法,這裡總結下,
1、配置編譯選項 (levels選項內)genetate debug symbols 設定為no,這個配置選項應該會讓你減去小半的體積。
2、捨棄架構armv7,因為armv7用於支援4s和3gs,4s是2023年11月正式上線,雖然還有小部分人在使用,但是追求包體大小的完全可以捨棄了。
3、編譯的版本必須是發布版本,
4、查詢內部使用到的第三方庫,一方面可以進行刪減**,用不到的類,直接刪除,還有第三方庫中的資源統統刪除掉,如果能夠自己手寫實現的,那費功夫自己寫吧
單單上面的幾個操作全部完成的話,我的包體從60m下降到了17m
其他的資源相關: 音訊
assets
確定 dead code(**被定義但從未被呼叫)被剝離,build setting 裡 dead_code_stripping = yes。 去掉冗餘的**,即使一點冗餘**,編譯後體積也是很可觀的。
使用quicklz縮小程式體積
目錄將二進位制檔案生成c陣列程式 有乙個需求是這樣的,寫的乙個程式內建了乙個很大的檔案 實際就是抓取epsg.io的內容裡面的epsg.io.json 這個檔案篩選縮減後還有12mb,如果直接內建到程式中,編譯後的程式就很大了。因為這個程式是乙個動態庫,而使用upx壓縮過的動態庫有時候會有一些異常問...
iOS APP優化之 IPA體積優化
專案中在對ipa體積的優化 接下來會對各個部分分別嘗試優化處理已減小安裝包體積 使用方法 1.將.sh檔案放到所檢測工程的目錄下,2.cd 到該目錄項 3.執行指令碼 sh unusedimage.sh 在我自己工程裡執行結果如下 可以看到有好多資源都沒有應用到。注意 這裡在刪除未應用的時注意第三方...
減小war包體積
現在使用 jenkins 自動化部署專案有這樣乙個問題,那就是專案使用到的 jar 包比較多,這就導致每次將 war 包上傳到伺服器上的時間就比較長。今天無意間看到乙個方法可以大幅減少 war 包大小,提公升效率。方法很簡單就是將第三方 jar 包直接放到 tomcat 的 lib 目錄下,而不是放...