Google Play商店中的智能应用更新:它是如何运作的?

时间:2012-10-12 14:12:19

标签: android google-play

Google Play商店支持(自2012年8月起)一项名为Smart App Updates的新功能,该功能允许在升级应用时仅下载必要的“增量”。

我没有找到开发人员有关此功能的文档,因此我不知道如何优化我的应用程序以确保它从这个伟大的机制中受益。

那么,有谁知道:

  • 对开发人员有哪些技术影响(如果有的话)? (我想在用户的设备上构建了一个新的全尺寸APK,或者未更改的数据可能存储在其他地方?)
  • 以前版本的未更改数据的重用是否仅限于某些资源? (如asset文件夹中的文件)

2 个答案:

答案 0 :(得分:20)

一步一步:

  1. GDIFF,一种增量编码算法,用于计算其间的差异 旧的应用程序版本和新的。这是在服务器上完成的 侧。这种计算的差异通常被称为a 补丁文件。
  2. 补丁文件将传输到设备。
  3. Google Play商店应用使用修补程序文件和旧应用程序构建新版本的应用程序。
  4. 新版本已安装在设备上。
  5. 目前,补丁大小是新应用程序版本大小的25%(平均而言)。因此,您平均可以节省75%的流量。权衡取决于您必须在终端设备上进行更多计算以部署接收的补丁,具体取决于增量编码技术。 GDIFF非常简单,开销最小。差异是在APK包之间计算的(使用APK中的所有信息)。如前所述,开发人员不需要做任何事情就可以从这个新功能中受益。

答案 1 :(得分:6)

没有文档的原因是因为谷歌没有任何外部交互在服务器端100%完成。开发人员不应该担心这个功能。只需开发您通常会使用的应用程序。

公平地说,我不相信他们希望任何人知道它是如何运作的,因为我认为它是他们知识产权的一部分。