Android Studio Dolphin | 2021.3.1

这篇具有很好参考价值的文章主要介绍了Android Studio Dolphin | 2021.3.1。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Compose 中的新功能

以下是 Android Studio 中 Jetpack Compose 的新功能和改进。

Compose 动画协调

现在,如果可组合项预览中描述了动画效果,您可以使用动画预览来一次性检查和协调所有这些动画。您还可以冻结特定动画。

Android Studio Dolphin | 2021.3.1

Compose Multipreview 注解

您现在可以定义包含多个预览定义的注解类,并使用该新注解一次性生成这些预览。您可以使用此新注解同时预览多个设备、字体和主题,而无需为每个可组合项重复这些定义。

 

布局检查器中的 Compose 重组计数

在调试 Compose 布局时,了解可组合项在哪些情况下重组或不重组对于理解界面是否正确实现非常重要。 例如,如果重组次数过多,您的应用可能会执行不必要的操作。另一方面,未按预期重组的组件可能会导致意外行为。

借助布局检查器,您可以查看布局层次结构中的各个可组合项是执行了重组还是跳过了重组。此类信息会在您与应用互动时实时显示。首先,请确保您的应用使用的是 Compose 1.2.0-alpha03 或更高版本。然后按照常规方法部署应用。

打开 Layout Inspector 窗口,然后连接到您的应用进程。在 Component Tree 中,您应该会在布局层次结构旁边看到两个新列。第一列显示每个节点的组合次数。第二列显示每个节点的跳过次数。从 Component Tree 或 Layout Display 中选择可组合项时,您还可以在 Attributes 窗格中看到类似信息。

如果要重置计数,请点击 Component Tree 面板顶部附近的 Reset。重置计数有助于您了解与应用进行特定交互期间的重组或跳过情况。

注意:如果您在 Component Tree 面板中没有看到新列,您可以从 Component Tree 顶部附近的 View Options 菜单 Android Studio Dolphin | 2021.3.1 中选择 Show Recomposition Counts 以启用或禁用相关选项,如下如下图所示。

 

更新了 Wear OS 模拟器配对助理

从 Android Studio Dolphin Canary 3 开始,Wear OS 模拟器配对助理改进了相关功能,可让您更轻松地管理和连接 Wear 模拟器。您现在可以执行以下操作:

  • 设备管理器中查看 Wear 设备。
  • 将多个 Wear 设备与一部虚拟或实体手机配对。
  • 当之前已配对的设备启动时,自动重新连接之前已配对的设备。 Android Studio 现在会记住并重新配对上次设置的配对。

如需使用这些新功能,请确保您的手机模拟器是 API 级别 30 或更高级别,并且已安装 Google Play 商店。此外,请确保您的 Wear 模拟器是 API 级别 28 或更高级别。如需将模拟设备升级至最新的系统映像,请依次点击 Tools > SDK Manager

如需了解详情,请参阅使用 Wear OS 模拟器配对助理。

更新了 Wear OS 模拟器工具栏

从 Android Studio Dolphin Canary 2 开始,对于 API 级别 28 或更高级别的 Wear 模拟器,模拟器工具栏上的一些按钮现在可以模拟设备上的物理按钮和常用操作。新按钮包括:“按钮 1”和“按钮 2”(“按钮 2”仅适用于 API 级别 30 或更高版本)、“手掌”按钮和“倾斜”按钮。您可以使用 Wear 模拟器上的新按钮执行以下操作:

  • 如需将您的设备设置为氛围模式,请点击“手掌”按钮。
  • 如需将设备恢复到氛围模式之前的上一个屏幕,请点击“倾斜”按钮。

如需了解详情,请参阅在模拟器中执行常见操作。

新增了 Wear OS 运行配置

添加了新的运行配置,以快速运行和调试特定于 Wear OS 的 surface(例如表盘、卡片和复杂功能)。您可以在运行应用时通过 Run/Debug Configurations 对话框创建这些新配置。

如需了解详情,请参阅 Wear OS 运行/调试配置。

更新了 Logcat

更新了 Logcat,让您可以更轻松地解析、查询和跟踪日志。

新增了格式化功能

Logcat 现在会对日志进行格式化,以便更轻松地扫描有用的信息(例如标记和消息)以及识别不同类型的日志(例如警告和错误)。

创建多个 Logcat 窗口

您现在可以在 Logcat 中创建多个标签页,以便在不同设备或查询之间轻松切换。右键点击标签页可对其重命名,点击并拖动可重新排列标签页。

此外,为了帮助您更轻松地比较两组日志,您现在可以在一个标签页中拆分视图,方法是右键点击日志视图,然后选择 Right Right 或 Split Down。如需关闭分屏,请右键点击并选择 Close。每个分屏都允许您设置自己的设备连接、视图选项和查询。

Android Studio Dolphin | 2021.3.1

在视图预设之间切换

Logcat 现在可允许您在不同视图模式之间快速切换,包括 StandardCompact 和 Custom。方法是点击 。 每种视图模式都会提供不同的默认设置,用于向您显示更多或更少的信息,例如时间戳、标记和进程 ID (PID)。您还可以通过选择 Modify View 来自定义每个默认视图模式以及自定义视图模式。

借助这个新的查询系统,您无需查询正则表达式即可准确查询内容,还可以从历史记录中撤消以往的查询,并与他人共享这些查询。此外,您仍然可以使用正则表达式,并基于键值对来排除日志。以下示例说明了如何使用新的查询系统,但您也可以直接在查询字段中键入内容以查看相关建议:

  • 本地应用项目的 PIDpackage:mine
  • 特定值
    • package:<package-ID>
    • tag:<tag>
    • level:[VERBOSE | INFO | ASSERT |DEBUG | WARN | ERROR ]
  • 在键前面添加 - 以排除特定值
    • -tag:<exclude-tag>
  • 在给定键后面添加 ~ 以对其使用正则表达式
    • tag~:<regular-expression-tag>
    • 与排除标记结合使用:-tag~:<exclude-regular-expression-tag>

您还可以查看查询的历史记录,方法是:点击查询字段中的 ,然后从下拉列表中选择。如需收藏某个查询,使其在所有 Studio 项目中始终位于列表顶部,请点击查询字段末尾的 Android Studio Dolphin | 2021.3.1

 

跟踪应用崩溃/重启日志

借助新的 Logcat,您现在可以更轻松跟踪应用崩溃和重启日志,以免错过这些事件的重要日志。 当 Logcat 发现您的应用进程已停止并重启时,您会在输出中看到一条消息(例如 PROCESS ENDED 和 PROCESS STARTED),如下所示:

重启 Logcat 会保留会话配置(例如标签页拆分、过滤器和视图选项),以便于您轻松继续会话。

Gradle 管理的设备

为了提高使用 Android 虚拟设备执行自动化插桩测试时的一致性、性能和可靠性,我们引入了 Gradle 管理的设备。此功能适用于 API 级别 27 及更高级别,可允许您在项目的 Gradle 文件中配置虚拟测试设备。在执行自动化测试时,构建系统会使用这些配置来完全代管(即创建、部署和拆解)这些设备。

借助这项功能,Gradle 不仅可以了解正在运行的测试,还能了解设备的生命周期,从而通过以下方式提高测试体验的质量:

  • 处理设备相关问题,以确保顺利执行测试
  • 利用模拟器快照缩短设备启动时间,减少内存用量,并在两次测试之间让设备恢复到干净状态
  • 缓存测试结果并仅重新运行可能提供不同结果的测试
  • 为本地测试和远程测试提供一致的测试运行环境

此外,Gradle 管理的设备还引入了一种称为自动测试设备 (ATD) 的新型模拟器设备,该设备经过优化,可在运行插桩测试时提高性能。结合测试分片支持功能,您可以试验在多个 ATD 实例间拆分测试套件,以缩短总测试执行时间。 如需详细了解 Gradle 管理的设备及其相关功能,请参阅使用 Gradle 管理的设备扩展测试。

R8 支持使用基于 DEX 指令偏移的映射文件

优化行信息时,R8 现在可以使用基于指令偏移量的行表来对共享调试信息对象中的信息进行编码。这可以显著减少行信息的开销。其结果是方法中的行不再连续,但可能会跳过间隔,具体取决于指令的大小。请注意,某些工具未考虑这种共享编码。

此外,从 O(API 级别 26)开始的 Android 虚拟机支持在堆栈轨迹中输出指令偏移量(如果方法没有行号信息)。如果使用 minSdk 26 或更高版本进行编译,并且没有源文件信息,R8 会完全删除行号信息。

无状态 lambda 不再作为单例进行脱糖

脱糖时,无状态 lambda 不会再被分配为单例。单例表示方法会增加因添加字段和类初始化程序而产生的代码大小开销,以及因静态类初始化而导致的启动开销。现在,无状态 lambdas 在使用地点的分配方式与有状态 lambda(具有捕获的 lambda)的分配方式相同。

R8 避免了 Android 运行时验证速度减慢的问题

为了消除 Android 运行时(Dalvik 和 ART)的性能问题,R8(而非 D8)现在引入了库桩以及对库方法的概要调用来处理运行时中可能不存在库类和方法的情形。这种方式可以消除许多验证问题并提高运行时性能。此功能始终处于启用状态。

支持采用 Java 8+ API 脱糖引擎的 JDK-11 API

使用 coreLibraryDesugaring 依赖项时,现已支持基于 JDK-11 的实现库。如需了解详情,请参阅 desugar_jdk_libs 变更日志。

Android Gradle 插件和 Android Studio 兼容性

Android Studio 构建系统以 Gradle 为基础,并且 Android Gradle 插件添加了几项专用于构建 Android 应用的功能。下表列出了各个 Android Studio 版本所需的 Android Gradle 插件版本。

如果您的项目不受某个特定版本的 Android Studio 支持,您仍然可以使用旧版 Android Studio 打开和更新您的项目。

Android Studio 版本 所需插件版本
Arctic Fox | 2020.3.1 3.1-7.0
Bumblebee | 2021.1.1 3.2-7.1
Chipmunk | 2021.2.1 3.2-7.2
Dolphin | 2021.3.1 3.2-7.3
Electric Eel | 2022.1.1 3.2-7.4
Flamingo | 2022.2.1 3.2-8.0

如需了解 Android Gradle 插件的新变化,请参阅 Android Gradle 插件版本说明。文章来源地址https://www.toymoban.com/news/detail-450518.html

到了这里,关于Android Studio Dolphin | 2021.3.1的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Visual Studio 2022的一个惊艳新功能开发隧道

    在visual studio开发H5网站的调试时候,需要在多环境调试,比如在不同浏览器和不同分辨率的电脑、不同的手机浏览器测试。或者项目比较着急,需要边测试边开发,可不可以不发布让测试人员来测试呢?visual studio 2022在17.5版本推出了开发隧道(Dev Tunnels)的功能,就是可以解

    2024年02月06日
    浏览(39)
  • c++23中的新功能之十平坦容器

    在前面反复提到过,其实所有的编程语言总体的方向是朝着自然语言化和简单在发展,速度有快慢,但方向基本没有错。这里先回顾一下,在STL中有六大组件(侯捷老师的《STL源码剖析》),这其中开发者经常见到的还是以容器为主。容器主要分成两大类:顺序容器和关联容

    2024年02月13日
    浏览(32)
  • C++23中的新功能之expected和optional

    在前面用过c++17新推出的这个std::optional功能,它可以处理接口返回空值的情况,非常方便实用。但终究存在一个习惯的问题,大家会问,只是处理一个空值,多写一个这玩意儿意义不大,还是用方法吧。这种情况一定是大概率的发生。正如语言发展一样,一定要简单,而且功

    2024年02月11日
    浏览(29)
  • Android Studio Dolphin 新版Logcat的配置使用

    从之前版本的 Android Studio 更新到 Android Studio Dolphin , Logcat 也有了新变化。一般来说工具更新带来的新特性会使我们的开发更加的便捷和高效。 Logcat 会对日志进行格式化,同时对不同等级的日志以颜色区分,能使我们更方便的查看想要的日志。同时根据个人的使用需求,

    2023年04月13日
    浏览(41)
  • C++11 新功能

    在2003年C++标准委员会曾经提交了一份技术勘误表(简称TC1),使得C++03这个名字已经取代了C++98称为 C++11之前的最新C++标准名称。不过由于TC1主要是对C++98标准中的漏洞进行修复,语言的核心部分则没 有改动,因此人们习惯性的把两个标准合并称为C++98/03标准。从C++0x到C++11,C+

    2023年04月12日
    浏览(41)
  • Java 20 新功能介绍

    Java 20 共带来 7 个新特性功能 ,其中三个是孵化提案,孵化也就是说尚在征求意见阶段,未来可能会删除此功能。 JEP 描述 分类 429 作用域值(孵化器) Project Loom,Java 开发相关 432 Record 模式匹配(第二次预览) Project Amber,新的语言特性 433 switch 的模式匹配(第四次预览)

    2024年02月03日
    浏览(49)
  • 【C++】C++11 -- 新功能

    在C++11之前一个类有6个默认成员函数,在C++11标准中又新增了两个默认成员函数,分别是移动构造函数和移动赋值函数 默认移动构造和移动赋值生成的条件 移动构造函数的生成条件:没有自己实现移动构造函数,并且没有自己实现析构函数,拷贝构造函数和拷贝赋值函数 移

    2024年02月17日
    浏览(37)
  • Midjourney新功能:角色参照指南

    基本概念 角色参照(Character Reference) :这个功能允许用户在不同的图像生成中保持给定参照角色的一致性。 适用模型 :适用于Midjourney V6和Niji6型号。 功能亮点 跨风格一致性 :可以在不同风格(如动漫风、写实风)中保持角色特征一致。 面部、着装、发型调控 :用户可以

    2024年04月10日
    浏览(50)
  • TypeScript 5.1发布,新功能更新

    1:返回类型增加undefined 这里设置了一个别名 fun,当时使用它的时候,我们必须显示返回一个 undefined 。 现在你可以直接设置返回类型: 而不仅限于 void any 。 4.3版本 :❌ 5.1版本 :✅ 2:getter可以设置和 setter 的不相关类型 在之前版本 ,get 返回类型应该为 set 的子类型,如

    2024年02月09日
    浏览(36)
  • 揭密.NET 8到底有什么新功能

    .NET 8 是微软于2021年8月24日宣布的下一代编程语言和框架,它是 .NET 宇宙的一部分,与 C# (Common Language Infrastructure) 紧密集成。.NET 8 引入了许多新功能,如原生编译、值类型 (Value Types)、结构化并发 (structured concurrency) 和快速数组 (RapidArray)。.NET 8 还支持本机 (native) AOT (Ahead-Of

    2024年02月03日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包