参考这个问题 ── App Store 支持增量更新吗?── Apple 自 iOS 6 起引入非常优雅的解决方案,把大部分事情都做了,开发者面对增量更新并没有新的烦恼,当然不需要自己提交多个增量包,也不影响审核的时间。

简单地说,App Store 会读取开发者所提交 application bundle 里面的所有内容,然后对比此前的每一个旧版本,只取每一次对比不同的部分,然后生成不同的多个 patch package,给不同旧版本的用户下载。

最显著的变化是,假设 Numbers for iOS 有一个 bug fixed 新版本,完全包可能是 700MB,但增量更新版可能只有十多 MB,下载需要更少的时间使用更少的流量。不过依据具体情况不同,安装时间可能会变长。

至于对开发者的影响,上面说了不需要特别做什么,不过要想为用户提供更好的体验,有两个提示和一个特别注意事项:

  • 别做不必要的文件更改 ── Do not make unnecessary modifications to files. Compare the contents of the prior and new versions of your app with diff or another directory comparison tool and verify that you’ve only changed what you expect within your app bundle.
  • 需要更改的内容最好独立独立放置,避免修改大尺寸的旧内容文件 ── Content that you expect to change in an update should be stored in separate files from content that you don’t expect to change. This reduces the size of the update package and increases its install speed.

  • Warning: 不要依赖不同的文件创建或修改时间,App Store 的 diff 对比会忽略 metadata,即前后同样名字和大小的文件会被当成同一个 ── Your app should not rely on the creation and modification dates of files in your application bundle. When your app is updated using an update package, files are updated only if their content changes and will not be updated if only their metadata (e.g. creation and modification date) changes.

阅读更多: Technical Q&A QA1779: Reducing Download Size for iOS App Updates

— 完 —

本文作者:David Chang

【知乎日报】
你都看到这啦,快来点我嘛 Σ(▼□▼メ)

此问题还有 2 个回答,查看全部。
延伸阅读:
App Store 支持增量更新吗?
如果得到 App Store 的推荐,会给应用的下载量带来多少提升?

分享到