Google Play 资产交付简介

Google Play 资产交付简介

两年前,我们推出了 Android App Bundle,一种新的发布格式,允许 Google Play 帮助优化你的应用程序交付。这个应用程序包现在是 Play 的推荐发布格式; 几乎 50% 的顶级应用程序和游戏已经在使用它。

它取代了在发布时传统的单个 APK 安装包,允许您包装所有的语言,屏幕密度和设备架构到一个单一的工件。包本身无法安装; Play 负责从发布的单个包中为每个请求设备生成优化的 apk。

使用 App Bundle 动态分发产生优化的 APKs

应用程序已经在应用捆绑中取得了巨大的成功,但是游戏通常面临着不同的交付挑战。

今天,大型 Android 游戏依赖于 APK 扩展文件和自定义内容交付网络(CDNs)来交付内容。 Apk 扩展文件(也称为 obb)支持大型资源,但需要维护一个额外的发布工件,这会导致许多开发人员问题。 使用 CDN 进行资源交付常常会导致用户体验欠佳; 用户安装和打开游戏只是为了在等待下载更多资源时面对一个长长的进度条。 用户可能还需要等待更新的资源,而不是将其作为游戏自动更新的一部分提供。 最后,CDN 通常不是免费的,因此这种提供游戏资产的方式还涉及到需要考虑的额外成本。

为了处理游戏的独特需求,Play 引入了 Play 资产交付,让你在正确的时间在正确的设备上动态交付正确的游戏资产,而不需要额外的成本。 为了实现这一点,我们通过添加资产包扩展了 Android 应用程序包发布格式。

带有一个基本模块、两个动态特性模块和两个资产包的 Android 应用程序包的内容。

资产包包含非代码的游戏内容,比如纹理、材质和声音。它们可以在 Google Play 上使用,并且有很大的尺寸限制,非常适合玩游戏,你还可以自定义如何以及何时将每个资产包下载到设备上。

保持资产及时更新

Play Asset Delivery (PAD)可以让你依靠 Google Play 来更新你的资产,就像你的游戏二进制一样。 当你的应用程序自动更新时,整个游戏都会更新,包括所有资产。 当你的用户打开游戏时,他们已经有了最新的二进制文件和资源,他们不需要等待资源更新。 Play 还为您提供 delta 补丁,最小化下载大小和更新时间。

为了处理用户在有机会更新之前打开游戏的情况,你可以使用我们的应用内更新 API 在游戏上下文中触发更新。

Play 资产交付引擎支持

  • Unreal 引擎的版本4.25支持用资产包构建 App bundle,而不是 APK 扩展文件includes a plugin 包括一个插件,它提供用于管理下载和从 Play Asset Delivery 请求信息的函数调用
  • 我们已经建立了一个Unity plugin 1. Unity 插件 ,它负责将你的 Unity 资产包打包成资产包,并让你构建一个包含它们的 Android 应用包。 该插件现在可以在我们的软件包注册表中使用,并且与 Unity 2017.4及更高版本兼容
  • 对于其他引擎来说,Android Gradle plugin 4.0允许你将你的资产包和二进制文件组合成一个 App Bundle。 只需更新 gradle 插件版本,并在 build.gradle 文件中为每个独立的资产包配置交付模式

自定义安装资产包的时间

您可以根据三种传递模式自定义何时安装资产包: 安装时、快速跟踪和按需安装。

  • install-time 模式资产包允许您提供最多 1GB 的游戏资产作为初始游戏安装的一部分。 对于你的应用程序来说,这就像一个大的 APK,不需要扩展文件或特殊的 API 调用。 只需将你的资产打包成资产包并发布到 Play
  • fast-follow 模式一旦安装应用程序,资产包就会自动下载,允许用户在重要资产仍在下载时开始播放。这个应用程序不需要打开就可以下载。

  • on-demand 应用程式可按要求下载资产包。

按需和快速跟踪资产都作为原始文件交付,并放置在您的游戏的内部存储。您可以使用 PAD API 跟踪下载进度,并使用文件系统调用直接访问资产。

为游戏扩展 Android 应用程序包

在使用 Play Asset Delivery 时,您可以利用 App Bundle 格式,该格式允许 Play 优化设备的二进制文件,使其更容易支持 64 位和 32 位设备以及不同的 CPU 架构,如 ARM 和 X86。 我们也希望帮助您为每个设备提供最佳的资产集合,这个方向的第一步是纹理压缩格式定位。

在即将发布的 Play Asset Delivery 中,你可以将纹理打包成多种纹理压缩格式,依靠 Play 为每个设备模型提供最优资产。这意味着你不需要通过使用次优的纹理压缩格式来妥协,你的用户将总是得到适合他们设备的最佳资产,而不会浪费网络带宽或有次优的加载性能。

更好的保留与改进的安装经验

图片是来自由 Gameloft 开发的 Asphalt 8

Gameloft 集成了 Play 资产交付到 Asphalt 8Asphalt Xtreme,和 Minion Rush。 Asphalt Xtreme 很容易从使用 APK 扩展文件切换到使用 PAD 与安装时交付。Asphalt 8 和 Minion Rush 最初都使用了自定义 CDN,Gameloft 用 PAD 取代了 CDN。他们能够通过调用 PAD API 来替换自定义 CDN 调用来利用快速跟踪和按需交付。他们看到了 CDN 成本的预期下降,但是随着快速跟踪交付,他们也看到了完成二次下载并开始玩游戏的用户数量的显著增加。这导致更好的用户保留,与10% 以上的新球员相比,他们以前的 CDN 资产交付系统。 由于前景看好的早期结果和无缝的实施过程,Gameloft 计划在其即将发布的更多版本中使用 PAD。阅读更多关于他们的经验

改善用户体验,节省成本

益智儿童-动物形状和拼图游开发商: RV AppStudios

总部位于美国的开发商 RV AppStudios 迄今为止已经有超过 2 亿的下载量,包括休闲游戏、儿童教育应用程序和实用程序。他们的益智儿童应用程序提供超过 23MB 的资产作为玩家进展通过的水平。当他们从第三方 CDN 转向使用 Play Asset Delivery 的按需模式时,他们看到15天保留期增加了4.7% ,崩溃和年增长率减少了21% 。总的来说,这些变化通过提供更稳定、透明和安全的下载帮助提高了用户体验,同时也节省了 RV AppStudios 的成本。阅读更多关于他们的经验

Play 资产交付现在可以使用

我们致力于帮助您通过发挥与定制的动态交付服务您的整个游戏。Play Asset Delivery,包括新的游戏应用程序包格式,以及它的三种传输模式和更新 + 补丁都是通用的。你可以在 d.android.com 上找到相关文档,这些文档将根据你使用的游戏引擎来帮助你完成整合过程。

原文作者:Dan Galpin, Developer Advocate
原文地址:https://android-developers.googleblog.com/2020/06/introducing-google-play-asset-delivery.html

版权声明

禁止一切形式的转载-禁止商用-禁止衍生 申请授权

你已经成功订阅到 Android 开发技术周报
太棒了!接下来,完成检验以获得全部访问权限 Android 开发技术周报
欢迎回来!你已经成功登录了。
成功!您的帐户已完全激活,您现在可以访问所有内容。