2021 Android Studio 版本名启用新代号

2,729 阅读3分钟

一 背景

以下 Android Studio 简称 as
以下 Android Gradle Plugin 简称 AGP as官方下载地址

我刚开始学Android 编程的时候,还在用Eclipse,后面开始用as,从 as 2.0 不断升级到 4.2(2021年4月)。由于 as 本身是基于 Intellij 克隆的,为了和Intellij版本号保持一致, 谷歌在 2020年11月对 as 版本号的叫法进行了变更,点击了解变更说明

二 第一个新版本2020.3.1

如果沿用以前的编号叫法,2021年8月发布的版本应叫 as 4.3。但是,新版编号系统将其命名为 Android Studio Arctic Fox (2020.3.1),或简称为Arctic Fox(北极狐)。 image.png

现在是2021年,怎么新的版本编号名反而叫2020.3.1了,是不是越更新越旧?其实不是这样的,名字只是一个叫法,具体含义如下。

2.1 新编号说明

image.png

  • 第1 和 第2 组数字:as是基于 IntelliJ 平台的哪个版本进行迭代的。
  • 第3组数字: as 主版本从 1 开始,每个主版本递增 1。
  • 第4组数字: as 次要版本/补丁程序版本,从1开始,每个次要版本递增1。因为是第一个版本,暂时没有补丁。后续如果as升级,会叫做:2020.3.1.1。

此外,还将为每个主要版本提供版本名称,分别以A 到Z 的动物来命名。所以:2020.3.1 == Arctic Fox。

image.png

2.2 为啥as要改名?

  • 新的命名更加符合 IntelliJ 的命名规范,与Intellij 版本号 对齐。
  • 新命名给开发者带来了更多的可见性,比如我们能明确知道as版本是基于 IntelliJ 哪个版本开发的。

2.3 AGP版本 与 as 版本解耦

以前我们升级了as版本后, 通常会在项目下的build.gradle 里更新 AGP插件版本

   dependencies {
      classpath "com.android.tools.build:gradle:4.2" // 以前
     // classpath "com.android.tools.build:gradle:7.0.0" // 现在
   }
  • 以前Gradle插件的版本一直以来都是与AS的版本保持一致的。

  • 现在AGP的版本与as的版本变化解耦,AGP 版本不再跟随Android Studio的主版本变化和发版节奏。在AGP 7.0之后,Gradle将会推出自己的年度主要版本,每年发布一个主要版本。

  • AGP 7.0 最低JDK版本要求JAVA 11 ,AGP 只会1年发布一个大版本,比如 2021发布了AGP 7.0, 后续补丁也是基于7.1.1 ,7.1.2。 使用稳定版AGP 的项目可以使用较新版本的as中。

image.png

三 as 2020.3.1 新特性

3.1 Data binding 支持 StateFlow

class ViewModel() {
   val username: StateFlow<String>
}
 
<TextView
    android:id="@+id/name"
    android:text="@{vm.username}" />

3.2 支持 Jetpack Compose 预览和测试

官方github示例

Canary和Beta区别

  • Canary 版:这些是前沿版本,大约每周更新一次,下载地址

    除了接收 Android Studio 的 Canary 版之外,您还将收到其他 SDK 工具的预览版,包括 Android 模拟器。

    虽然这些版本存在较多的错误,但它们已经过测试,我们希望为您提供这些版本,以便您尝试新功能并提供反馈。此版本不推荐用于生产开发

  • 开发者版:这些是精心挑选的 Canary 版本,已经过全面的内部测试。

  • Beta 版:这些是基于稳定 Canary build 的候选版本,这类版本会先收集反馈,然后再作为稳定版进行发布。

  • 稳定版:官方稳定版下载地址