找回密码
 立即注册
  • QQ空间
  • 回复
  • 收藏

新闻 iOS 9如何给应用瘦身为设备腾出空间

News 2015-6-10 10:32:07 显示全部楼层 阅读模式 打印 上一主题 下一主题
cea37fe45d8a1bc.jpg

在 WWDC 大会上苹果公司为设备存储空间不够用的 iPhoneiPad 用户介绍了一个解决方案——App Thinning,它能让你的设备腾出更多空间。这个功能的作用就在于它能够让 iOS 9 设备仅下载需要的代码,这样应用占用的空间就会比目前的少很多。不过在这项功能中其实有三个独立的机制,在给应用瘦身方面,它们发挥着各自的作用。下面让我们来详细了解一下。

首先是 App Slicing,它在这其中发挥着最重要的作用。因为应用需要在不同尺寸的设备上运行,从 3.5 英寸的 iPhone 4 到 5.5 英寸的 iPhone(通用应用还支持 10 英寸 iPad),针对这些不同的设备,它们内含不同的独立资产,而大部分是你的设备不需要的。

假设你使用的是 iPhone 5 c,它运行的是 32 位 CPU 和 GPU,不支持 Metal API。如果你下载的是一款最新的通用游戏应用,它的二进制中含有 64 位代码,iPad 和“3 x”iPhone 6 Plus 资产以及 Metal API 代码,这些都是你的设备用不上的。它只需要 32 位代码,“2 x”iPhone 尺寸资产以及 OpenGL 图形代码。

有了 App Slices,开发者就可以根据设备添加资产标签,当用户从 iTunes 下载应用时,它将仅下载你的设备需要的资产。因为苹果已经将整个过程设计得非常简单,所以相信很多应用很快就会开始支持这项特性。

ODR(随需应变资源)是应用瘦身的另外一种方法。比如多级游戏,用户需要的通常都是他们当前的级数以及下一级。ODR 意味着用户可以下载他们需要的几级游戏。随着你的级数不断增加,应用再下载其他级数,并将用户成功过关的级数给删掉。

最后还有一种就是 Bitcode。开发者不再上传应用的预编译的二进制文件,而是上传应用的“中间代表”。在用户下载之前,App Store 在自动编译应用程序。这样即使开发者没有给他们的代码添加标签,应用也能够执行 App Slicing 部分功能,仅下载设备需要的 32 或 64 位代码。

不过 Bitcode 也意味着如果苹果完善编译器提高代码效率,用户下载应用时苹果进行的完善会自动整合进去。

当然这个新特性有时候也会带来不方便。比如你坐十几个小时飞机,期间一直在玩游戏,不小心你就一路过关斩将,但是因为没有下载所以不能继续玩下去,这种时候会非常无奈。不过在大多数情况下,对多数用户来说,App Thinning 带来的好处还是比较多的,对于 16 GB 容量设备用户来说更是如此。




关注官方微信 资讯一手掌握

[font=微软雅黑, Adobe 黑体 Std, 黑体, 宋体, Verdana, Geneva, sans-serif]

您还在为无法及时获得最新苹果资讯而烦恼吗,为找不到 MAC 软件、游戏而困扰吗?
关注 iMac.ly 官方微信吧,立即掌握最新资讯,专业技术人员在线答疑,您身边的苹果专家

回复

使用道具 举报

说点什么

您需要登录后才可以回帖 登录 | 立即注册
HOT • 推荐