【问题标题】:Why is apk build on Windows different from one built on Linux/Mac OS?为什么在 Windows 上构建的 apk 与在 Linux/Mac OS 上构建的 apk 不同?
【发布时间】:2020-11-23 09:12:00
【问题描述】:

我有两个使用相同源代码构建的 apk。

  1. MacOS 大约 19 与 Windows 大约 16 MB 的大小不同
  2. 在工作室 apkanalyzer Windows 中解压缩时,它们具有不同数量的 dex 文件 - classes(1-3).dex,MacOS classes(1-15).dex。 一般来说,这里和那里的文件大小是不同的。

【问题讨论】:

  • 你是如何构建这些 apk 的?它们是否具有相同的构建变体(调试/发布和相同的风格)?
  • 两者口味相同
  • 我使用 assembleMyBuildType 命令从 studio gradle 侧面板构建它们

标签: android linux windows macos apk


【解决方案1】:

一切都与 gradle 构建的运行方式有关。

我的猜测是,在 macOS 上构建的 gradle 正在构建不适用代码收缩规则的调试版本 (R8) 在 Windows 上,它是带有 R8 的发布版本。

但要在此处查明问题,您可以在应用的根文件夹中检查适用于 Windows 的 gradle.bat 和适用于 Mac 的 gradlew 可执行文件之间的区别。

【讨论】:

  • 我专门从 app/build/outputs/apk/qa 文件夹中获取了 apks 并检查了我的 qa 配置,我在那里有 minifyEnabled - false。所以两者都不应该被缩小
猜你喜欢
  • 1970-01-01
  • 2015-03-29
  • 2014-04-15
  • 2020-09-14
  • 2017-08-02
  • 1970-01-01
  • 2020-07-20
  • 2012-04-18
  • 1970-01-01
相关资源
最近更新 更多