Android Gradle 插件 2.0.0(2016 年 4 月)

依赖项:
新变化:
  • 通过支持字节码注入,然后将代码和资源更新推送到模拟器或实体设备上正在运行的应用,来启用 Instant Run
  • 添加了对增量构建的支持,即使应用未运行也支持。 通过 Android 调试桥将增量更改推送到已连接的设备,缩短了整体构建时间。
  • 添加了 maxProcessCount,以控制可以同时衍生多少个工作器 dex 处理进程。以下代码在模块级 build.gradle 文件中将最大并发进程数设置为 4:

    Groovy

    android {
      ...
      dexOptions {
        maxProcessCount = 4 // this is the default value
      }
    }
    

    Kotlin

    android {
      ...
      dexOptions {
        maxProcessCount = 4 // this is the default value
      }
    }
    
  • 添加了实验性代码缩减器,以支持 dex 预处理和减少对依赖项的重复 dex 处理,而这些不受 Proguard 支持。这提高了调试 build 变体的构建速度。由于实验性缩减器不支持优化和混淆处理功能,因此您应该为发布 build 启用 Proguard。如需为调试 build 启用实验性缩减器,请将以下代码添加到模块级 build.gradle 文件中:

    Groovy

    android {
      ...
      buildTypes {
        debug {
          minifyEnabled true
          useProguard false
        }
        release {
          minifyEnabled true
          useProguard true // this is a default setting
        }
      }
    }
    

    Kotlin

    android {
      ...
      buildTypes {
        getByName("debug") {
          minifyEnabled = true
          useProguard = false
        }
        getByName("release") {
          minifyEnabled = true
          useProguard = true // this is a default setting
        }
      }
    }
    
  • 为资源缩减器添加了日志记录支持并提升了性能。资源压缩器现在会将其所有操作记录到与 Proguard 日志文件位于同一文件夹的 resources.txt 文件中。
改变的行为:
  • 如果将 minSdkVersion 设置为 18 或更高,APK 签名会使用 SHA256。
  • DSA 和 ECDSA 密钥现在可对 APK 软件包进行签名。

    注意:从 Android 6.0(API 级别 23)开始,Android Keystore 提供程序不再支持 DSA 密钥

修复的问题:
  • 修复了导致在测试和主 build 配置中出现重复 AAR 依赖项的问题。