[go: nahoru, domu]

Adobe 利用 App Bundle 和 Dynamic Delivery 将应用大小缩减了 20%

背景

Adobe 的创意和办公工具自 1982 年以来就一直在为用户提供帮助。尽管 Photoshop、Illustrator 和 Lightroom 等 Adobe 应用几十年来一直深受创意人士好评,但一直保持低调的 PDF(Adobe 在近 30 年前开发的软件)才堪称家喻户晓。

Adobe 的旗舰 Android 移动应用 Adobe Acrobat Reader 在全球都免费,属于标杆性的应用,非常可靠,可用于查看、签署 PDF 文档和在其中添加注释,下载量超过 5 亿次。经过这么多年,该应用仍在持续改进。“在过去的一年里,我们在我们的 Android 应用中新增了大量功能。”Adobe 计算机科学家 Shubham Garg 说。不过,虽然用户很喜欢新功能,但与此同时,他们也开始注意到应用大小日益增加的问题,而这会导致转化量降低。这是个问题,“特别是在发展中经济体,这两个问题就更突出了。”Shubham 说。

策略

借助 Android App Bundle,Adobe 无需花费太多精力就可以缩减 Acrobat 的应用大小。“改用 App Bundle 很容易,”Shubham 说,“我们的应用本就支持最低的 Android SDK 版本和 Gradle 要求,因此我们对代码做出的更改可忽略不计,轻松就能满足版本支持方面的要求。”他说,在将签名密钥的副本安全转移到 Google 后,发布就轻而易举了。

除了采用 App Bundle 格式,Adobe 还选择对多种应用功能进行模块化处理,以便进一步缩减应用大小。“我们已在应用内使用了库模块,但动态功能可以让我们以另一种方式思考模块化,”Shubham 说,“应用可以独立方式分发,不会产生对功能的编译时依赖项,因此相关功能可以日后再安装。”

他们先对“填充和签名”进行了模块化处理。借助 Dynamic Delivery,他们再也不必在每个 APK 中都加入针对所有屏幕密度和语言的资源了。此外,由于他们已经按架构拆分了旧 APK,因此该团队无需进行任何额外工作即可使这些 APK 与 app bundle 兼容。

结果

利用 App Bundle 和 Dynamic Delivery,Acrobat 将应用大小缩减了 15 MB,缩减幅度约为 22% - 25%。对于某些设备,缩减幅度更大,约为 30%。发布工作进展非常顺利,据 Shubham 说:“我们未遇到任何性能下降的情况,下载体验也很流畅。”他认为这些成果的取得,在一定程度上归功于测试的简易性。“我们依靠的是内部应用分享功能,该功能为我们提供了 Play 商店体验,同时还让我们可以上传可调试的应用,而无需担心版本控制问题。”

采用 App Bundle 格式还为该团队节省了时间,因为他们现在只需将单个工件上传到 Google Play 即可。“以前,我们只能依赖按架构拆分的 4 个不同的 APK。”Shubham 说。现在,只需一个软件包就搞定了。他们还发现安装转化率提高了 5% 到 7%,而且有关应用大小的用户投诉数量也减少了。

至于 Dynamic Delivery,Shubham 说:“应用安装大小更小了,速度也更快了。”在进行模块化处理之前,该团队经常为每个版本上传 4 个不同的 APK。此外,由于每个 APK 都有不同的版本号,因此他们必须分别衡量 Vitals 指标和分析数据 - 这个过程非常繁琐,而且容易出错。但采用 app bundle,他们只需上传一个工件,而且该工件只有一个版本号。“这就帮助我们简化了开发流程,现在,我们只要与测试人员共享一个 build 就可以完全放心了,因为我们知道这个 build 适用于所有设备。”Shabham 说。

接下来要做什么?“我们想使用按条件分发功能做个试验,通过定位到特定受众群体,了解缩减应用大小或动态分发特定功能有哪些益处。”Shubham 说。

使用入门

所有应用和游戏开发者都可以使用 Android App Bundle。立即开始使用!

前往 Play 管理中心