增量更新对开发者有何影响?
2015-12-24 15:50
323 查看
Apple自iOS6起引入了非常优雅的解决方案。把大部分事情都自己做了,开发者面对增量更新并没有新的烦恼,当然更不必要开发者提交多个增量包,也不影响审核的时间。
简单来说,App store会读取开发者所提交application bundle里面的所有内容,然后逐一用新版本对照此前的每一个旧版本,而后只取每一次对比不同的部分,最后生成不同的多个 patch package,给不同旧版本的用户下载。
通俗的讲就是,假设一个2.1版本号的bug修复最新包,完整包大小是100MB,和2.0版本号对比后的增量包是10MB,那么用户下载的时候需要的更少的时间,节省更多的流量。不过依据具体情况不同,安装时间可能也不同。主要由于对比版本生成增量包的时间不同所致。
苹果官方文档给出了两个注意事项和一个提示:
1、别做不必要的文件修改: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
2、修改的内容最好独立存储,避免修改大尺寸的旧内容文件: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.
3、不要依赖不同文件创建和修改时间,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.
官方文档链接:Reducing Download Size for iOS App Updates
简单来说,App store会读取开发者所提交application bundle里面的所有内容,然后逐一用新版本对照此前的每一个旧版本,而后只取每一次对比不同的部分,最后生成不同的多个 patch package,给不同旧版本的用户下载。
通俗的讲就是,假设一个2.1版本号的bug修复最新包,完整包大小是100MB,和2.0版本号对比后的增量包是10MB,那么用户下载的时候需要的更少的时间,节省更多的流量。不过依据具体情况不同,安装时间可能也不同。主要由于对比版本生成增量包的时间不同所致。
苹果官方文档给出了两个注意事项和一个提示:
1、别做不必要的文件修改: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
2、修改的内容最好独立存储,避免修改大尺寸的旧内容文件: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.
3、不要依赖不同文件创建和修改时间,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.
官方文档链接:Reducing Download Size for iOS App Updates
相关文章推荐
- c++中关于hash_map自定义equal function和hash function
- (2.2)QCA atheros 无线配置命令——iwpriv关联和ACL
- HDU 1394 Minimum Inversion Number(树状数组||线段树)
- jqgrid列动态加载
- asp.net WebPages 速记3
- html、js实现facebook、twitter分享
- 十大编程算法助程序员走上高手之路
- xcode APP 打包以及提交itc审核详细流程
- 表达式(四则运算)计算的算法
- java.net.InetAddress类的使用
- (2.1)QCA atheros 无线配置命令——iwpriv聚合和ANI参数
- 【剑指offer】之青蛙跳台阶
- ActionBar
- 避开WebForm天坑,拥抱ASP.Net MVC吧
- 关于if/else if
- JS 特殊字符的魅力
- 关于sqoop与datax。 和sqoop to oracle插件OraOop
- JAVA虚拟机关闭钩子(Shutdown Hook)
- cocospod 安装问题
- JAVA虚拟机关闭钩子(Shutdown Hook)