【问题标题】:What are the pros and cons for jumboMode (dexOptions)jumboMode(dexOptions)的优缺点是什么
【发布时间】:2016-02-26 03:03:11
【问题描述】:

我的 Android 构建 ~~is~~ 非常慢。 3-5 分钟。

我删除了很多依赖项,现在可以在没有 multidex 的情况下构建 - 耶。

不过,我问自己手动设置巨型模式是否有意义...

jumboMode

启用后,它允许 dex 文件 https://stackoverflow.com/a/24224385/570168 中包含更多字符串

  • jumbo 模式有缺点吗?
  • 应该一直打开吗? (或更好)
  • 它对构建速度有影响吗?

【问题讨论】:

    标签: android android-studio android-gradle-plugin dexoptions


    【解决方案1】:

    Q1:Jumbo 模式没有任何缺点,而是有一些优点。

    Jumbo 模式与 DEX 文件中可以引用的字符串数量有关,默认情况下使用 16 位宽的整数进行索引。因此,如果您的应用程序编码超过 2^16 个字符串,则 dx 工具也会失败。然而,对于字符串引用,有一个补救措施:DEX 支持“巨型操作码”,它允许 32 位宽的字符串引用。 Android Gradle 构建脚本中的 jumboMode 标志启用此模式,最多允许引用 2^32 个字符串。

    这意味着如果您的 dex 文件中有超过 2^16 个引用,您可以使用 jumboMode 通过允许最多 2^32 个引用来适应这种情况。这是通过强制字节码始终使用“巨型字符串”(2^32) 引用来帮助避免在合并 dex 文件时出现问题。

    Q2:这取决于你的类文件。如果您不想担心,可以随时打开它。

    Q3:仅对构建速度没有影响。

    【讨论】:

      猜你喜欢
      • 2015-12-29
      • 1970-01-01
      • 2014-01-24
      • 2011-07-12
      • 1970-01-01
      • 1970-01-01
      • 2010-09-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多