2011-05-14 86 views
9

我的iPhone應用程序已準備好投入生產,我們希望儘可能多地填充數據。當我爲我的應用程序探查生成的.app文件時,我看到一個名爲<的文件,該文件的可執行文件名稱爲>,我假設它是編譯後的代碼。這大概是2.5 megs,這對我在我的應用中包含的內容來說似乎很大。我應該檢查什麼類型的東西以確保沒有任何不需要的項目被包含到我的可執行文件中?如何減少iPhone應用程序的代碼大小?

回答

5

有很多事情你可以做 - 2.5 MB是一個小應用程序。

  • 一個顯而易見的方法是驗證您的二進制文件實際上已被刪除。這將刪除未使用的引用(例如實際上未調用的函數)和調試信息。

  • 鏈接時間優化(LTO)可以爲您節省大量的空間,儘管這適用於您的程序的C和C++方面。它把我的一個節目減少到了1/5的大小。

  • 玩優化設置。 O3O2經常產生比Os更小的二進制。

  • 跟蹤您的相關庫。他們的出口符號可能相對較大。

  • 對大型項目中的共享庫感興趣的C或C++。如果未使用,可能會被剝離或優化。

  • 最小化static數據和static函數,將其範圍限制爲c,cpp,m,mm文件。

+0

我想我知道一般的想法,但我會怎麼去做這件事在Xcode?我希望有人會告訴我<雙擊Project> - > Build中的一些設置,我可能會搞砸。 – TurqMage 2011-05-16 15:55:56

+0

有幾個剝離選項,並不都適用。只需轉到目標的構建設置面板並搜索「strip」即可。你不想剝奪調試版本。 – justin 2011-05-16 17:39:02

2

我可能不會過分擔心應用程序是2.5MB,但如果你想盡力確保你只包括真正需要的東西,我會看看所有的資源文件(圖像,視圖,電影等),你的項目引用並確保它們全部被應用程序使用。

相關問題