您的免安装应用 APK 包含一个大于最大大小 4364793 字节的 APK

Your Instant App APKs contains an APK that is greater than the maximum size of 4364793 bytes

我正在尝试部署我的第一个免安装应用程序,但在 google 游戏控制台上不断出现此错误,使 'Deploy' 按钮处于禁用状态:

Your Instant App APKs contains an APK that is greater than the maximum size of 4364793 bytes

而 android Studio APK 分析器工具显示:

raw size: 3.5 MB

Download size: 3.5 MB

APK size: 3.8 MB

此外,我注意到随着我减小 APK 的大小(最初为 4.2 MB),最大大小不断减小

如果有人知道出了什么问题,我想寻求帮助。

4MB 是 Android 中 Instant Apps 的指定大小限制,如文档中所述:

You must be mindful of the 4MB size limit for instant app downloads. Also, each feature needs to have a single activity as its entry point.

我的建议是查看 Reduce APK Size 文档。它建议删除未使用的资源,最大限度地减少库中的资源使用等等。

消息 "APK contains an APK" 让我有点不高兴,以为您可能有一些奇特的应用程序。但我在发布代码中没有看到该字符串,所以我认为您 运行 陷入了一个更典型的错误。

免安装应用格式是包含 APK 的 ZIP 文件。这些 APK 中的每一个都必须小于 4MB。

此外,如果您的应用分为功能 APK 和基本 APK,则功能 + 基本 APK 的任意组合也必须小于 4MB。

如果您使用配置 APK,那么这些也会影响限制,但我认为您不会。

我想不通,我不确定 APK Profiler 会告诉您免安装应用的什么信息,是整个 ZIP 的大小还是单个 APK 的大小。我可能是错的,但我不认为它知道我们 4MB 限制的计算。一种无需使用任何花哨工具即可检查大小的简单方法是解压缩 ZIP 文件并查看磁盘上 APK 的大小。或者使用 APK 分析器。

另一件事:如果您发布到开发轨道,那里没有大小限制。但这并不能解决您的尺寸问题,但在解决尺寸问题之前先试用 Instant Apps 可能是一种有用的方法。

来源:Instant Apps FAQs: App size.