官宣 有趣的 Android Studio 版本新方案

简介: Android Studio 版本命名新方案,带来的好处是升级 Android Studio 不需要同时升级 Gradle 插件,有趣的是以动物的名字来命名,全文分为译文和译者思考两部分。

image.png


  • 原标题:Announcing Android Studio Arctic Fox (2020.3.1) & Android Gradle plugin 7.0
  • 原地址:https://android-developers......
  • 原作者:Google
  • 译者:hi-dhl
  • 公众号:ByteCode,致力于分享最新技术原创文章,涉及 Kotlin、Jetpack、算法、译文、系统源码相关的文章


Android Studio 版本命名新方案,带来的好处是升级 Android Studio 不需要同时升级 Gradle 插件,有趣的是以动物的名字来命名,全文分为译文译者思考两部分。


译文



于 2020.12.1 号 发布了  Android Studio Arctic Fox(2020.3.1) canary 版本,以及 Android Gradle 插件(AGP) 7.0.0-alpha01 版本,在新版本中,我们调整了 Android Studio 和 Gradle 插件的版本方案,这一变化将 Gradle 插件从 Android Studio 版本中分离出来,这样更加清楚的知道 Android Studio 在每个版本中使用的 IntelliJ 版本。


Android Studio 新的版本方案


随着 Android Studio Arctic Fox(2020.3.1) 的推出,我们将使用更接近 IntelliJ IDEA (Android Studio 所基于的IDE) 的基于年的版本方案,我们正在改变版本命名方案,同时也添加了一些重要的属性:年份, IntelliJ 的版本,加入了 feature 和 patch 级别。通过名字的改变,你可以很快地知道 Android Studio 使用的 IntelliJ 的版本号。此外,每个主要版本都有一个规范的代号,从 Arctic Fox 开始,然后按字母顺序进行,以方便查看哪个版本是最新的。


我们建议您使用最新的 Android Studio,以便可以使用最新功能和质量改进。 为了使更新更容易,我们对版本进行了更改,将 Android Studio 与 Gradle 插件版本分离。 要记住的一个重要细节是,更新 IDE 的时候,对构建系统编译和打包应用程序的方式没有影响。 相反,应用程序构建过程的更改和 APK/Bundles 由项目 AGP 版本决定。


因此,即使在开发周期的后期,也可以安全地更新 Android Studio 版本,因为项目中使用的 AGP 版本可以和 Android Studio 版本不同。


最后,在新的版本系统中,只要您将 AGP 版本保持在稳定版本,可以很方便的在项目中同时运行 Android Studio 的稳定版本和预览版本。


按照以前的版本命名方案,这个版本是 Android Studio 4.3,但是在新的版本方案中,这个版本是 Android Studio Arctic Fox (2020.3.1) Canary 1 或者 Arctic Fox。


image.png


接下来,我们将介绍 Android Studio 新的版本命名方案。


<Year of IntelliJ Version>.<IntelliJ major version>.<Studio major version>


  • 前两个数字代表 Android Studio 使用的 IntellIj 的版本号,对于这个版本,是 2020.3
  • 第三个数字表示 Android Studio 主要的版本,从 1 开始递增
  • 为了更容易引用每个版本,我们给主要版本起了一个名称,根据动物名称从 a 开始递增到 Z。最初发行的名字是 Arctic Fox


Android Gradle 插件版本新方案


在 AGP 7.0.0 中,我们采用了 semantic versioning 的原则,并与 AGP 要求的 Gradle 版本保持一致,Android Studio 和  Gradle 插件之间的兼容性保持不变。使用 AGP 稳定版本的项目可以使用最新的 Android Studio 版本打开。


我们将会发布另外一篇文章,详细介绍 AGP 版本控制方案和 AGP 7.0 的新特性。


译者思考



对于新版本的命名方案最大的好处就是,升级 Android Studio 不需要同时升级 Gradle 插件,也就意味着,只要将 Gradle 插件的版本保持在稳定版本,可以很方便的在项目中同时运行 Android Studio 的稳定版本和预览版本。


但是新的 Gradle 插件会带来一些新特性,所以升级 Android Studio 版本的同时,可以同时升级 Gradle 插件的版本到稳定版本,我们来汇总一下 Android Studio 之前的命名方案 和  Gradle 插件的对应关系。


Android studio 插件版本与 gradle 版本对应关系如下所示:


AS 插件版本  Gradle 版本
1.0.0 - 1.1.3 2.2.1 - 2.3
1.2.0 - 1.3.1 2.2.1 - 2.9
1.5.0 2.2.1 - 2.13
2.0.0 - 2.1.2 2.10 - 2.13
2.1.3 - 2.2.3 2.14.1+
2.3.0+ 3.3+
3.0.0+ 4.1+
3.1.0+ 4.4+
3.2.0 - 3.2.1 4.6+
3.3.0 - 3.3.3 4.10.1+
3.4.0 - 3.4.3 5.1.1+
3.5.0 - 3.5.4 5.4.1+
3.6.0 - 3.6.4 5.6.4+
4.0.0+ 6.1.1+
4.1.0+ 6.5+


以上信息参考 Android Gradle 插件版本说明


Android Studio 根据动物名称来命名,而 Android 系统 10.0 之前都是以甜点的方式来命名,我们在来会汇总一下 Android 系统的命名方案。


2007 年 11 月 5 日发布最初的版本(Android 0.5),至今 Android 发行了多个版本,Android 操作系统有预发行的内部版本,分别为铁臂阿童木(Astro)与机器人班亭(Bender),从 2009 年 5 月开始, Android 的版本代号以甜点来命名,且每个代号间的前缀以英文本母序接续排列。


Android 系统名字、版本、API level 的对应关系如下所示:


名称 版本号 发版日期 API API
Android 1.0 1.0 2008年9月23日 1 BASE
Android 1.1 1.1 2009年2月9日 2 BASE_1_1
Android Cupcake(纸杯蛋糕) 1.5 2009年4月27日 3 CUPCAKE
Android Donut(甜甜圈) 1.6 2009年9月15日 4 DONUT
Android Eclair(闪电泡芙) 2.0 – 2.1 2009年10月26日 5 – 7 ECLAIR_MR1(2.1.x)
ECLAIR_0_1(2.0.1)
ECLAIR(2.0)
Android Froyo(优格冰淇淋) 2.2 – 2.2.3 2010年5月20日 8 FROYO
Android Gingerbread(姜饼) 2.3 – 2.3.7 2010年12月6日 9 - 10 GINGERBREAD_MR1( 2.3.3 - 2.3.4)
GINGERBREAD(2.3、2.3.1、2.3.2)
Android Honeycomb(蜂巢) 3.0 – 3.2.6 2011年2月22日 11 - 13 HONEYCOMB_MR2(3.2)
HONEYCOMB_MR1(3.1x)
HONEYCOMB(3.0.x)
Android Ice Cream Sandwich(冰淇淋三明治) 4.0 – 4.0.4 2011年10月18日 14 - 15 ICE_CREAM_SANDWICH_MR1(4.0.3、4.0.4)
ICE_CREAM_SANDWICH (4.0、4.0.1、4.0.2)
Android Jelly Bean(果冻豆) 4.1 – 4.3.1 2012年7月9日 16 – 18 JELLY_BEAN_MR2(4.3)
JELLY_BEAN_MR1(4.2 - 4.2.2)
JELLY_BEAN(4.1 - 4.1.1)
Android KitKat(奇巧巧克力) 4.4 – 4.4.4 2013年10月31日 19 - 20 KITKAT
Android Lollipop(棒棒糖) 5.0 – 5.1.1 2014年11月12日 21 - 22 LOLLIPOP_MR1(5.1)
LOLLIPOP(5.0)
Android Marshmallow(棉花糖) 6.0 – 6.0.1 2015年10月5日 23 M
Android Nougat(牛轧糖) 7.0 – 7.1.2 2016年8月22日 24 - 25 N_MR1(7.1 - 7.11) N(7.0)
Android Oreo(奥利奥) 8.0 – 8.1 2017年8月21日 26 – 27 O_MR1(8.1) O (8.0)
Android Pie(派) 9 2018年8月6日 28 P
Android 10 10 2019年9月3日 29 Q
Android 11 11 2020年2月19日 30 R


从 Android Q 开始不再以甜品命名,且直接称 Android Q 为 Android 10。以上信息参考 uses-sdk


结语



全文到这里就结束了,如果有帮助 点个赞 就是对我最大的鼓励!


最后推荐我一直在更新维护的项目和网站:


  • 全新系列视频:现代 Android 开发 (MAD) 技巧系列教程:在线查看
  • 计划建立一个最全、最新的 AndroidX Jetpack 相关组件的实战项目 以及 相关组件原理分析文章,正在逐渐增加 Jetpack 新成员,仓库持续更新,欢迎前去查看:AndroidX-Jetpack-Practice
  • LeetCode / 剑指 offer / 国内外大厂面试题 / 多线程 题解,语言 Java 和 kotlin,包含多种解法、解题思路、时间复杂度、空间复杂度分析


image.png


  • 最新 Android 10 源码分析系列文章,了解系统源码,不仅有助于分析问题,在面试过程中,对我们也是非常有帮助的,仓库持续更新,欢迎前去查看 Android10-Source-Analysis
  • 整理和翻译一系列精选国外的技术文章,每篇文章都会有译者思考部分,对原文的更加深入的解读,仓库持续更新,欢迎前去查看 Technical-Article-Translation
  • 「为互联网人而设计,国内国外名站导航」涵括新闻、体育、生活、娱乐、设计、产品、运营、前端开发、Android 开发等等网址,欢迎前去查看 为互联网人而设计导航网站


历史文章




目录
相关文章
|
4月前
|
数据采集 监控 API
告别手动埋点!Android 无侵入式数据采集方案深度解析
传统的Android应用监控方案需要开发者在代码中手动添加埋点,不仅侵入性强、工作量大,还难以维护。本文深入探讨了基于字节码插桩技术的无侵入式数据采集方案,通过Gradle插件 + AGP API + ASM的技术组合,实现对应用性能、用户行为、网络请求等全方位监控,真正做到零侵入、易集成、高稳定。
673 59
|
10月前
|
开发工具 Android开发 iOS开发
如何在Android Studio中配置Flutter环境?
如何在Android Studio中配置Flutter环境?
2307 61
|
7月前
|
存储 机器学习/深度学习 API
Android API Level 到底是什么?和安卓什么关系?应用发布如何知道自己的版本?优雅草卓伊凡
Android API Level 到底是什么?和安卓什么关系?应用发布如何知道自己的版本?优雅草卓伊凡
1158 31
Android API Level 到底是什么?和安卓什么关系?应用发布如何知道自己的版本?优雅草卓伊凡
|
9月前
|
Android开发 Windows
Android studio 报错Connect to 127.0.0.1:8888 [/127.0.0.1] failed: Connection refused: connect(已解决)
这是一篇关于解决Android Studio报错“Connect to 127.0.0.1:8888 failed: Connection refused”的文章。问题通常因系统代理设置被Android Studio自动保存导致。解决方法是找到系统中Android Studio使用的gradle.properties文件(位于Windows的C:\Users\你的电脑用户名\.gradle或Mac的/Users/.{你的用户目录}/.gradle),删除或注释掉多余的代理配置后保存并重新Sync项目。希望此经验能帮助快速解决同类问题!
1634 36
|
9月前
|
Java Android开发
Android studio中build.gradle文件简单介绍
本文解析了Android项目中build.gradle文件的作用,包括jcenter仓库配置、模块类型定义、包名设置及依赖管理,涵盖本地、库和远程依赖的区别。
825 19
|
移动开发 安全 Java
Android历史版本与APK文件结构
通过以上内容,您可以全面了解Android的历史版本及其主要特性,同时掌握APK文件的结构和各部分的作用。这些知识对于理解Android应用的开发和发布过程非常重要,也有助于在实际开发中进行高效的应用管理和优化。希望这些内容对您的学习和工作有所帮助。
1368 83
|
10月前
|
数据采集 JSON 网络安全
移动端数据抓取:Android App的TLS流量解密方案
本文介绍了一种通过TLS流量解密技术抓取知乎App热榜数据的方法。利用Charles Proxy解密HTTPS流量,分析App与服务器通信内容;结合Python Requests库模拟请求,配置特定请求头以绕过反爬机制。同时使用代理IP隐藏真实IP地址,确保抓取稳定。最终成功提取热榜标题、内容简介、链接等信息,为分析热点话题和用户趋势提供数据支持。此方法也可应用于其他Android App的数据采集,但需注意选择可靠的代理服务。
453 11
移动端数据抓取:Android App的TLS流量解密方案
|
10月前
|
Java API 开发工具
Android cmdline-tools版本与最小JDK的关系
总的来说,Android的命令行工具和JDK之间的关系就像是一场舞会,两者需要彼此配合,才能共同创造出美妙的舞蹈。如果选择了不合适的舞伴(即不兼容的版本),可能会导致舞蹈中的步伐混乱,甚至无法完成舞蹈。而即使选择了合适的舞伴,也需要考虑舞伴的舞蹈技巧(即性能和稳定性),才能确保舞蹈的完美表现。因此,选择合适的Android命令行工具和JDK版本,是每一个Android开发者都需要面对的重要决定。
336 13
|
前端开发 Java 编译器
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
385 36
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
|
11月前
|
安全 开发工具 Android开发
【Android Git】Git版本回退方式
在实际操作中,选择合适的版本回退方式,可以有效地管理代码版本,提高开发效率和代码质量。
665 26

热门文章

最新文章