首页 > 综合信息 > 原创 > 正文

iOS 13使用苹果Swift 5:将大幅减小iOS应用体积

        【每日科技网】
每日科技网

  这十年来在苹果开发者生态系统最重大的变化就是引入了Swift编程语言,并且今年WWDC上可能会看到的下一个重大变化是在Mac上引入第三方UIKit应用程序。

  Swift,这种新语言是在WWDC 2014上宣布的。在苹果工程师和开源社区的贡献下,它进行了多次迭代更新,现在是4.2.1版本。

  自第一个版本以来一直影响用户的Swift一个重要方面是它的应用程序二进制接口(或 ABI)不稳定。这在实践中意味着苹果不能在其操作系统中包含Swift语言支持,因为使用Swift 3编写的应用程序将不能与Swift 4的语言支持二进制文件一起使用。而其解决方案是包含Swift从App Store下载的app bundle中的语言库,但是这样增加了应用程序所需的带宽和存储空间。

  据外媒新闻,苹果已经开始使用的Swift 5,该语言变为二进制兼容。新版本包含在iOS 12.2,tvOS 12.2,watchOS 5.2和macOS 10.14.4中,所有这些版本目前都处于开发者测试阶段。这意味着,当新版本的苹果操作系统可供用户使用时,使用Swift 5编程语言发布到App Store的应用程序对于运行新操作系统的用户来说将会小得多。

  另一个好处是更快的启动时间,因为应用程序使用的每个动态库都会稍微增加其启动时间,但操作系统附带的库将会缓存在内存中并在所有应用程序之间共享。

  但具体减小了多少的存储空间呢?从App Store下载一些应用程序,并检查了Swift库占用了多少空间,以下是一些示例:

  Apollo for Reddit的大小为35.7 MB,包括7.5 MB的Swift库。而在iOS 12.2中更新为Swift 5时,应用程序大小将减少20%以上,降至30 MB以下。PCalc的大小为86.8 MB,包括7.5 MB的Swift库。更新到Swift 5后,应用程序大小将减少9%,降至80 MB以下。

  苹果 Watch的Chirp大小为28.8 MB,包含11.6 MB的Swift库。更新到Swift 5后,应用程序大小将减少30%以上,降至20 MB以下。这个应用程序与我们计算的应用程序相比节省了最多,因为它包含一个用Swift编写的苹果 Watch应用程序,其中包括用于watchOS的Swift库。

  节省的存储空间因设备而异。上面使用了iPhone XS Max上的应用程序大小作为参考,但考虑到安装了许多应用程序的设备,可以节省更多空间。

  当然,这建立在开发人员将采用Swift 5的假设上,但大多数使用Swift编写的应用程序都会得到积极维护,迁移也不会太困难。该语言的新版本还包括一个与为Swift 4.2编写的代码兼容的模式,这将使具有大量代码的开发人员迁移变得更加容易。

  所有用户都必须利用这一点来更新到iOS 12.2,tvOS 12.2,watchOS 5.2和macOS 10.14.4,并等待开发人员更新他们的应用程序。目前,所有系统都已经开始面向开发人员。使用Swift 5构建并发布到TestFlight的应用程序已经为运行测试版的用户节省了空间。

免责声明:本文仅代表作者个人观点,与每日科技网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。

本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们联系,本网站将在规定时间内给予删除等相关处理.