我的iPhone应用程序已准备好投入生产,我们希望尽可能多地填充数据。当我在为我的应用程序生成.app文件时,我看到一个名为< executable name>的文件。我假设是编译的代码。这大约是2.5兆美元,对于我在我的应用程序中包含的内容而言似乎很大。我应该检查什么类型的东西以确保我的可执行文件中没有包含任何不需要的项目?
答案 0 :(得分:5)
你可以做很多事情 - 2.5 MB是一个小应用程序。
一种显而易见的方法是验证您的二进制文件实际上已被剥离。这将删除未使用的引用(例如,实际上未调用的函数)和调试信息。
链接时间优化(LTO)可以为您节省大量空间,但这适用于程序的C和C ++方面。它使我的一个程序缩小到大约1/5。
使用优化设置进行游戏。 O3
和O2
通常会产生比Os
更小的二进制文件。
跟踪您的依赖库。它们的导出符号可能相对较大。
在大型项目中使用C或C ++来共享库。如果未使用,它们可能会被剥离或优化掉。
最小化static
数据和static
函数,将其范围限制为c,cpp,m,mm文件。
答案 1 :(得分:2)
我可能不会过分担心该应用程序是2.5MB,但如果你想做尽职调查以确保你只包含真正需要的东西,我会看看所有的资源项目引用的文件(图像,视图,电影等),并确保应用程序正在使用它们。