苹果公司在iOS9系统中推出了应用瘦身功能,可以让用户在不影响应用使用的情况下,减小应用程序的大小。这个新功能可以为用户带来的一个显著的好处是,可以让用户在设备内存不足的情况下,尽可能地充裕设备存储空间。下文将详细介绍iOS9应用瘦身功能,包括其实现原理、受影响的应用类型,以及如何在iOS 9设备上利用这个功能。
1. 原理
iOS9的应用瘦身功能的原理,是通过删除应用程序中未使用的代码和资源来减小应用程序的大小。在iOS9中,应用程序不再需要打包所有可能用到的资源文件,而是只会包含实际使用的文件。这种方式可以让应用程序的大小减小达到20%-30%的效果。对于开发者而言,他们可以通过Xcode中的 App Thinning来构建不同设备类型的包,让应用程序仅仅包括在其运行时需要的那些代码和资源。
1.1 App Slicing(应用切片)
App Slicing(应用切片)是iOS9应用瘦身功能中的一个细节。该功能可以根据用户设备的型号、分辨率等信息,构建一个可用于该设备的版本。已经支持App Slicing的应用可以使用更小的下载包,向用户提供特定于其设备的内容。通过这种方式,应用程序的下载时间能够大大减少,同时也使得更多的用户能够安装应用程序。
2. 受影响的应用类型
iOS9的应用瘦身功能是通过一系列的技术实现的,在一些条件下,处理上还是有些限制的。在下面的这些情况下,应用程序的大小可能不会减小太多:
2.1 应用程序无法被改变
如果一个应用程序需要在运行时动态生成代码或使用带有输入的文本框,那么 iOS9 的应用瘦身功能就无法帮助它减小体积。比如可以考虑某些游戏应用,由于很多游戏是在运行时渲染出场景的,因此无法去掉一些预编译的资源文件。
2.2 集成了Framework的应用
另一个不太容易适用同样是比较明显的:如果使用了许多第三方Framework,那么主App无法再剥离Framework中的文件了。因此一些常用的框架文件依然会被装载到应用程序中。
2.3 多重外部资源文件
像视频等多媒体资源文件,应用瘦身功能也无法帮助应用缩减太多的体积。它们尽管通过 URL 进行下载,但依旧会与应用本身捆绑在一起。如果应用程序本身就已经很小,那么它也无法再瘦下去了。
3. 如何启用应用程序瘦身功能
在iOS 9上,为了启用 App Thinnging,开发者首先需要更新适合的Xcode版本。最新版本的 Xcode 中包含一个新的工具工具链,其中包括 Asset Catalog Compiler(资源目录编译器)。
如果用户想要受益于iOS9的应用瘦身功能,那么他们需要确保他们更新到了最新的iOS版本,将其安装在自己的iOS设备上。然后,他们只需等待应用程序更新到支持 iOS9 平台就行了。如果应用程序已经更新到了这个版本,那么它会自动开始使用App Slicing功能。这个功能会查看设备本身的信息,决定哪些代码和文件是需要下载的。
4. 总结
总之,iOS9应用瘦身功能可以极大地减小应用程序的大小,这不仅可以帮助节省用户的存储空间,而且可以加快下载和安装应用程序的速度。不过,应用程序无法被改变、集成了Framework的应用以及多重外部资源文件等情况下,应用程序的大小可能不会减小太多。只有安装了适合的Xcode版本,更新适合的iOS版本,应用程序更新到支持 iOS9 平台,它才会自动开始使用App Slicing功能。未来,随着技术的进一步发展,iOS的应用瘦身功能会变得更加高效。