如何在iOS中减小应用程序的大小?

11

我知道这个问题已经被问了很多次,但每个答案都建议使用压缩图像或从Web链接到图像,而不是使用资源包。
在我的应用程序中,只有1.5 MB的图像,但该应用程序仍然有20.9 MB的大小。

我的应用程序中的其他文件如下:

  • 2个框架(CoreLocation、CoreBluetooth)
  • 2个pods(Fabric、Crashlytics)
  • 8个xib
  • 2种字体(254KB)
  • 还有一些Swift和obj-c文件

是否有人可以帮助我优化我的应用程序大小?


如果只有1.5 MB的图像和254KB的字体,为什么我的应用程序如此之大?我的iPhone上有一些具有与我的应用程序相同功能的应用程序,它们只占用520 KB和1.6 MB。有人知道那些应用程序的开发人员是如何实现的吗?

2个回答

6

Swift运行时包含在当前使用Swift的每个应用程序中,并且会增加应用程序的大小。 苹果不保证代码兼容性,但承诺运行时兼容性。 为了实现这一点,您编译的代码的Swift运行时库包含在应用程序中。这需要一些空间:)


你能具体说明一下吗? - Yagnesh
8
请使用 Objective C 编写,不要使用 Swift,或者接受使用 Swift 会使您的应用程序变得更大的事实。 - Paulw11
Swift运行时的大小是多少?它是否超过8MB? - Damiaan Dufaux

4
App Store的大小可能比Xcode报告的要小。如果您将构建上传到TestFlight,则TestFlight将报告更小的大小(但会告诉您常规的App Store版本可能会更大)。通过应用程序瘦身和位代码,交付给用户手机的二进制文件的大小将比“完整”应用程序大小要小。
一旦Swift 5(https://github.com/apple/swift-evolution)获得ABI兼容性,Swift的开销就会消失。
仅Fabric/Crashlytics就会增加几MB。如果您构建一个Archive,然后在Finder中右键单击该应用程序并显示包内容。从那里,您可以按文件大小排序并查看最大的罪魁祸首。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接