android - 为什么应用更新的文件大小大于或等于 Google Play 中新下载的文件大小?
问题描述
今天我在 Google Play 商店更新了我的应用程序,我正在使用 Unity3d。我对 .apk 所做的更改只有 3 或 5 mb。但是当玩家更新时,更新后的应用程序的文件大小与新安装游戏的玩家的大小相同或更大。
为什么更新大于或等于应用程序大小?
解决方案
我认为您可能会对 Google Play 在下载活动与更新活动中显示应用程序数据大小的方式感到困惑。这是可以理解的,因为它们没有提供关于列出的文件大小是只是更新还是整个应用程序大小的上下文。
答案是,这取决于。
@Silver 很好地解释了他们更新的算法如何处理数据下载,但我认为您的困惑在于不同 Play 活动中显示的感知文件大小。
根据更改的内容,可能需要重新下载整个应用程序的较小或较大部分。例如,如果您对 的列表进行了更改enums
,或添加了strings.xml
不同语言的文件,您可能会认为这是一个非常小的更新。但是在整个程序中,文件已更新以处理新的更改。根据这些更改发生在程序层次结构中的位置,用户的下载量可能比预期的要大。
对于主要版本(即AppVersion-MAJOR.MINOR.PATCH
),用户可能不得不重新下载整个应用程序,因为许多基础库已经更改。
磁盘大小提示:尽可能使用托管 API,以便将处理能力和文件大小外包给 API,而不是在用户设备上本地运行。虽然您将不得不使用数据(Wi-Fi 或其他方式)来进行 API 调用;简洁的 JSON 不需要太多数据。
推荐阅读
- python - 使用 Python 压缩选择的 PDF 文件 - 减小大小
- java - 为什么 volatile 静态变量不刷新?
- typescript - 类型中缺少属性但在不同类型中需要?
- python - 如何将 RGBA 颜色传递给 Seaborn PairGrid
- postgresql - 使用 s3_uri 将 s3 csv 导入 PostgreSQL
- ios - SwiftUI 键盘弹出一次输入并不断出现和消失
- python - ValueError: Input 0 is in compatible with layer vggface_resnet50: expected shape=(None, 224, 224, 3), found shape=(None, 1, 224, 224, 3)
- ip - 无法使用 keepalived 和 VRRP 设置浮动 IP
- r - R Shiny 链接多个输入以控制 1 个输出
- javascript - 选择下拉菜单中的最后一个选项或计算 ui vision rpa kantu selenium katalon 记录器的下拉菜单中的选项数