Android Studio Giraffe 发布,快来看有什么更新吧

news2024/11/18 7:46:46

又双叒叕到了「激动人心」 的 Android Studio 更新,这次更新的版本是 Giraffe | 2022.3.1,本次更新的 Giraffe(长颈鹿)将 IntelliJ 平台升级到 2022.3 版本,也将 AGP 支持提高到 8.1 ,虽然最低支持 3.2,但是由于自带 JDK17 的原因,所以如果想使用低版本 AGP 需要一些调整,具体可见:《快来适配 AGP8 和 JDK 17》 。

本次更新主要涉及:全新的外观 UI、Live Edit 的改进、Compose 动画预览、新的 Device Explorer、新的 SDK 升级助手、 Kotlin DSL 等等。

IDE 增强功能

Android Studio 的新 UI(Preview)

Giraffe 版本采用了全新的 IDE UI 效果,其中包括一些 Android Studio 特定的更改,如优化 Android 的默认主工具栏和工具窗口配置,更新图标风格等,主要变化有:

  • 简化的主工具栏,带有新的VCSProjectRun 控件
  • 工具窗口有新的布局
  • 新的浅色和深色主题,主要是改进对比度和调色板
  • 新图标提高了所谓的易读性

要使用新 UI 效果,可以在 **Settings > Appearance & Behavior > New UI **中打开,可以看到新 UI 变化包括简化的主工具栏、新的 Tool windows 布局、新的主题和图标等。

新的诊断和错误报告工具

在新 UI 里,可以通过新的诊断和错误报告工具提供详细的问题反馈,使用该工具可以更轻松地报告已附加相关日志文件的错误。

新的错误报告工具可在 Help > Collect Logs and Diagnostic Data 中找到。

具体骤操作为:

  1. 通过 Help > Collect Logs and Diagnostic Data 启动工具,可以看到出现一个对话框,让你选择要包含的文件
  2. 选中或取消选中要包含在诊断报告中的特定文件,选中特定文件即可查看其预览
  3. 当准备好导出诊断报告时,同意条款并选择 Create
  4. 选择要保存诊断报告 zip 文件的位置,然后点击 Save

作为此增强功能的一部分,错误报告模板(Help > Submit feedback)也更新了,其中也强调附加日志文件的重要性,如果需要提交错误,请务必附加日志,因为这是调试过程中必不可少的第一步。

新的 Device Explorer

新 UI 还附带新的 Device Explorer(在以前版本的 Android Studio 中称为 Device File Explorer )。

在 Device Explorer 中,文件和相关操作位于 Files tab中,而在新的 Processes Tab 中,用户可以查看已连接设备的 debuggable processes 列表,还可以选择一个进程并执行终止、强制停止或将调试器附加到给定进程。

**注意:**用于终止、强制停止或将调试器附加到进程的选项已从 Logcat 移至设备资源管理器。

编码调整

Live Edit & composables 实时更新

Live Edit 支持实时编辑,要使用 Live Edit,可以通过 Settings > Editor > Live Edit 打开它,并使用 Android Gradle Plugin (AGP) 8.1+ 和 Jetpack Compose Runtime 1.3.0 + 版本。

Compose 动画预览扩展

Compose 动画预览现在支持许多其他 Compose API,例如:

  • animate*AsState
  • CrossFade
  • RememberInfiniteTransition
  • AnimatedContent(除了updateTransition 和 AnimatedVisibility )

另外现在有新的选择器可以设置非 enum 或者 boolean 状态,以支持精确输入从而调试 Compose 动画。

对于所有支持的 Compose Animation API,开发者可以进行播放、暂停、拖动和控制速度等调试。

Android SDK Upgrade Assistant

新的 Android SDK Upgrade Assistant 可以直接在 IDE 中查看升级 targetSdkVersion 或者 API level 所需的步骤

它还将与升级相关的文档直接从官方网站提取到其工具窗口中,现在开发者可以不用在浏览器和 IDE 之间来回跳转查看。

对于每个迁移步骤,Upgrade Assistant 都会突出显示主要的重大更改以及如何解决这些更改,甚至过滤完整的更改列表,仅显示与 App 有关的步骤。

要打开 Android SDK 升级助手, 可以在 Tools > Android SDK Upgrade Assistant 打开。

重要提示:从 2023 年 8 月 31 日开始,所有应用都必须面向 Android 12(API 级别 33)或更高版本,才能提交到 Google Play 进行审核,更多可查阅: https://developer.android.com/google/play/requirements/target-sdk 。

构建系统的改进

Gradle 构建脚本中的 Kotlin DSL

Kotlin 不仅更具可读性,还提供更好的编译时检查和 IDE 支持,借助 Android Studio Giraffe,现在 Gradle 构建脚本中支持使用 Kotlin DSL ,这意味着 Kotlin 将是项目代码中使用的第一默认语言,除了使用 Jetpack Compose 的 UI,现在也可以编辑构建脚本。

简单说,就是:Kotlin DSL 现在是新 Gradle 构建的默认设置

现在从 Android Studio Giraffe 开始创建新项目或模块时,默认情况下就会使用 Kotlin DSL。

如果想迁移,可以查看 Kotlin DSL 迁移指南: https://developer.android.com/studio/build/migrate-to-kts。

当然,这个更新不会影响使用 Groovy 的现有项目,Groovy 项目还能继续工作,目前 Groovy 支持还没有弃用计划

使用 Kotlin DSL 相对编译性能比 Groovy DSL 慢,但是 Kotlin DSL 也带来一些其他好处:

  • Kotlin 是静态类型的,在编辑 Kotlin DSL 构建脚本时可以获得快速准确的代码提示

  • 语法错误更加准确,并且在编辑 Kotlin DSL 构建脚本时提示,而不是在尝试同步项目时显示:在这里插入图片描述

  • 可以通过按 Control+Q(在 macOS 上为 Command+B)获取类型和方法文档:

此外,本次还添加了对基于 TOML 的 Gradle 版本目录的实验性支持,该功能可让开发者在一个中心位置管理依赖项并跨模块或项目共享依赖项。

Android Studio 现在可以通过编辑器建议、与项目结构对话框的集成以及新建项目向导更轻松地配置版本目录。

Gradle 现实同步期间下载信息

新的同步工具窗口现在包括下载依赖项所花费的时间、摘要以及每个存储库下载的详细视图,此视图会在同步发生时实时更新,甚至可以帮助识别配置存储库的低效率问题。

制作选定模块的工具栏按钮

使用 Android Studio Giraffe,现在可以通过选择工具栏中的 Make Selected Modules 构建选项来仅构建正在处理的当前模块。

这个新选项可以检查刚刚编写的代码是否可以编译,而无需构建超出需要的代码。

总结

总结一下,本次更新的核心是全新的 Android Studio UI,也就是更新到了 IntelliJ Platform 2022.3 ,所以开启全新 UI 后,在 UI 习惯上需要一定的适应。

另外基于全新 IntelliJ, 更新了不少增强能力,如全新的 Device Explorer 和 SDK Upgrade Assistant。

其次构建系统的改进最重要的就是默认 Kotlin DSL ,并且Gradle 同步期间显示详细下载信息。

最后就是更好的支持 Compose 预览和动画。

那么,准备好了吗?全新的坑,在呼唤着你。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/791683.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LED智能照明在商业照明中的应用都有哪些?SLM421A数明深力科带你一起去了解

数明深力科SLM421A系列产品是用于两通道、高精度恒流源的LED线性驱动芯片。无需功率电感,无频闪、无EMC困扰,支持高频率PWM调色调光,在LED智能照明产品运用中周边线路简单,成本低。 SLM421每路驱动仅需要从SET到GND接一个电阻即可…

fpga_pwm呼吸灯(EP4CE6F17C8)

文章目录 一、呼吸灯二、代码实现三、引脚分配 一、呼吸灯 呼吸灯是指灯光在微电脑的控制之下完成由亮到暗的逐渐变化,使用开发板上的四个led灯实现1s间隔的呼吸灯。 二、代码实现 c module pwm_led( input clk ,input rst_n ,output reg [3:0] led ); …

从安装到实战!Citespace保姆级教程!

来源:浙师教育研会 软件介绍 Citespace是一款文献梳理软件 支持从主要来源(如Web of Science,Scopus,Dimensions,CNKI,CSSCI和其他一些来源)检索的书目和引文数据。能够把文件之间的关系&…

IntelliJ IDEA流行的构建工具——Gradle

IntelliJ IDEA,是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。 如…

华为数通HCIP-ISIS原理与配置

IS-IS的基本概念 isis(中间系统到中间路由协议) 链路状态路由协议、IGP、无类路由协议; IS-IS是一种链路状态路由协议,IS-IS与OSPF在许多方面非常相似:运行IS-IS协议的直连设备之间通过发送Hello报文发现彼此,然后建…

用Python实战,畅享音乐海洋,一键采集你喜爱的音乐!

前言 嗨喽,大家好呀~这里是爱看美女的茜茜呐 环境使用: Python 3.8 解释器 Pycharm 编辑器 模块使用: requests >>> pip install requests re 第三方模块安装方法: win R 输入cmd 输入安装命令 pip install 模块名 (如果你觉得安装速…

逻辑的极限

逻辑的极限,数学和沉思 发表于康托尔的天堂 当逻辑出错时会发生什么? 让我们看看为什么排除中间定律是错误的(有时),发现数学核心的基本问题,然后再最终尝试解决出了什么问题。 您还将学习如何理解-1的负根…

Nvlddmkm错误

问题描述: 使用maya或多开应用,会不定期黑屏 电脑配置如下: 黑屏时,系统错误日志如下: 处理方式: 1、更换旧版本显卡驱动或更新显卡驱动 (目前从Navid下载的都是新版本显卡驱动 &#xff…

Linux推出Debian 12.1,并进行多方面系统修复

据了解,Debian是最古老的 GNU / Linux 发行版之一,也是许多其他基于 Linux 的操作系统的基础,包括 Ubuntu、Kali、MX 和树莓派 OS 等。 此外,该操作系统以稳定性为重,不追求花哨的新功能,因此新版本的发布…

3ds Max图文教程: 创建致命的冠状病毒动画

推荐: NSDT场景编辑器助你快速搭建可二次开发的3D应用场景 1. 病毒建模 步骤 1 打开 3ds Max。 打开 3ds Max 步骤 2 在透视视口中创建一个半径为 50,线段为 20 的 GeoSphere。 创建地球 步骤 3 打开修改器列表并将置换修改器应用于地理 球。 置换…

Python数据分析实战-dataframe筛选某字段是(精确匹配)某些值的记录(附源码和实现效果)

实现功能 Python数据分析实战-data[data[].isin([])],筛选dataframe某字段是(精确匹配)某些值的记录 实现代码 import pandas as pddf {DataBase:[mysql,test,test,test,test],table:[user,student,course,sc,book]} df pd.DataFrame(df)…

SRC | 逻辑漏洞原理及实战

前言 作者简介:不知名白帽,网络安全学习者。 博客主页:不知名白帽_网络安全,CTF,内网渗透-CSDN博客 网络安全交流社区:https://bbs.csdn.net/forums/angluoanquan 目录 逻辑漏洞基础 概述 分类 URL跳转漏洞 概述 危害 漏洞…

CGT Asia嘉年华 | 2023单细胞测序与精准医疗论坛10月广州召开

单细胞测序技术是生物技术发展史中的里程碑式技术,目前在肿瘤研究、免疫研究、神经生物学研究及发育研究等领域都有越来越广泛的应用。单细胞测序技术可以发现稀少肿瘤细胞并进行动态监控,有助于肿瘤的个性化和精准治疗,对于精准医疗的发展至…

开发必看!一文读懂Salesforce测试策略实用建议!

可靠的测试策略是确定重大决策的关键工具,以便参与测试的人员能够做出符合共同目标的决策。测试软件的次数越多,就越能从制定高级计划中受益。本文将详细介绍测试策略,以及如何建立测试策略的实用建议。 01 什么是测试策略? 测…

开发一个二方包,优雅地为系统接入ELK(elasticsearch+logstash+kibana)

先介绍整个ELK日志平台的架构。其中xiaobawang-log就是今天的主角。 xiaobawang-log主要收集三种日志类型: 系统级别日志: 收集系统运行时产生的各个级别的日志(ERROR、INFO、WARN、DEBUG和TRACER),其中ERROR级别日志…

【指针一:穿越编程边界的超能力】

本章重点 字符指针 数组指针 指针数组 数组传参和指针传参 先回顾一下指针的概念有哪些? 指针就是个变量,用来存放地址,地址唯一标识一块内存空间。 指针的大小是固定的4/8个字节(32位平台/64位平台)。 指针是有类型&…

【java实习评审】对小说详情模块的更新判断以及数据库的商用字段设置比较到位

大家好,本篇文章分享一下【校招VIP】免费商业项目“推推”第一期书籍详情模块java同学的文档作品。该同学来自【山西农业大学】软件工程专业。 本项目亮点难点: 1 热门书籍在更新点的访问压力 2 书籍更新通知的及时性和有效性 3 书荒:同好推荐的可能性 4…

内部web服务器,部署HTTPS(nginx + 宝塔面板设置)

1、需求 在BS应用研发过程中,很多浏览器的功能需要在开启web服务器的https功能才能实现,例如chrome浏览器的系统剪切板(CtrlC/CtrlV)的使用,但是开发过程中,一般使用内部的服务器,只有IP地址&a…

vue3 - element-plus 上传各种 word pdf 文件、图片视频并上传到服务器功能效果,示例代码开箱即用。

效果图 在 vue3 项目中,使用 element plus 组件库的 el-upload 上传组件,进行文件、图片图像的上传功能示例。 完整代码 可直接复制,再改个接口地址。 在这里上传图片和文件是分成

软件测试简历项目经验该怎么写?【两年经验】

在写简历之前,我们先来看看失败者的简历和成功者的简历之间有什么区别。为什么成功者的简历可以在求职中起到“四两拨千斤”的作用,而失败者的简历却被丢进了垃圾桶,这两者到底有什么不同? 成功的简历与失败的简历 我们发现&…