电脑百事网10月23日消息 谷歌官方表示,近期发布了 Android Studio 4.1 稳定版,为大家带来一系列针对常见的编辑、调试和优化工作的功能。4.1 版本的重点诉求之一是帮助您在使用 Android Jetpack 库 (即 Android 的开发库套件) 时遵循最佳实践和提升代码编写效率。基于大家的反馈,直接在 IDE 中集成了诸多常用的 Android 库,从而改善了编写代码的体验。
Android Studio 4.1:http://developer.android.google.cn/studio
Android Jetpack:http://developer.android.google.cn/jetpack
电脑百事网了解到,Android Studio 4.1 的一些亮点如下 : 引入全新的 Database Inspector,用于查询应用的数据库;支持浏览使用 Dagger 或 Hilt 进行依赖项注入的项目;支持在 Android 项目中使用 TensorFlow Lite 模型,进一步增强了对设备端机器学习的支持。我们还对 Apply Changes 进行了更新,以加快部署速度。我们根据大家的反馈进行了一些更改,引入了新的原生内存性能分析器和独立分析工具来为游戏开发者提供助力。
Hilt:http://developer.android.google.cn/training/dependency-injection/hilt-android
下载 Android Studio 4.1:http://developer.android.google.cn/studio
下面按关键开发流程列出了 Android Studio 4.1 中的所有新功能。
设计
Material Design 组件更新
现在,创建新项目 (New Project) 对话框中的 Android Studio 模板使用 Material Design 组件 (MDC),并且默认支持最新版的主题和样式设计指南。如此一来,开发者可以更轻松地使用推荐的 Material 样式模式,以及支持现代界面功能 (如深色主题)。
gutter 操作,会将您导航到提供该类型的位置。相反,点击gutter 操作会将您导航到将类型用作依赖项的位置。Android Studio 还支持对使用 Jetpack Hilt 库定义的依赖项执行导航操作。
Dagger:http://developer.android.google.cn/training/dependency-injection/dagger-basics
Hilt:http://developer.android.google.cn/training/dependency-injection/hilt-android
文档 : Dagger 导航支持 http://developer.android.google.cn/studio/releases#dagger-navigation
△ 在 Android Studio 4.1 中查看 TensorFlow Lite 模型元数据
构建和测试
Android 模拟器 – 可折叠设备铰链信息支持
Android Studio
除了最近新增的 5G 移动网络测试功能,我们还在 Android 模拟器中增加了对可折叠设备的支持。在 Android 模拟器 30.0.26 及更高版本中,您可以使用多种折叠设计和配置对可折叠设备进行设置。设置完毕后,模拟器将提供铰链角度传感器和姿态变化信息,方便您测试应用在这些机型上的响应情况。
针对 5G 的模拟器支持 http://developer.android.google.cn/about/versions/11/behavior-changes-all#emulator-5g
使用 Android 模拟器在 Android 11 上进行开发 http://medium.com/androiddevelopers/developing-for-android-11-with-the-android-emulator-a9486af2d7ef
Apply Changes 更新
更快的构建有助于开发者更轻松、快速地更改应用。为了帮助您提高应用迭代效率,我们对 Android 11 或更高版本设备的 Apply Changes 进行了多项增强。
我们在优化迭代速度上进行了大力投入,开发出一种无需安装应用即可在设备上部署和保存更改的方法。现在,在完成初始部署后,通过 Apply Code Changes 或 Apply Changes and Restart Activity 对 Android 11 设备进行后续部署的速度大幅提升。我们还在 Apply Changes 中增加了对其他代码更改的支持。现在,在您添加一个方法后,可点击 Apply Code Changes 或 Apply Changes and Restart Activity 按钮将这些更改部署到正在运行的应用中。
结构化类重定义与 Apply Changes http://medium.com/androiddevelopers/structural-class-redefinition-and-apply-changes-30f96f1962e6
从 AAR 中导出 C/C++ 依赖项
Android Gradle Plugin 4.0 增加了在 AAR 依赖项中导入 Prefab 软件包的功能。我们希望扩展此功能以共享原生库。AGP 4.1 支持在 Android 库项目的 AAR 中从外部原生构建中导出库。要导出原生库,请将以下内容添加到库项目 build.gradle 文件的 android 块中 :
使用原生依赖 http://developer.android.google.cn/studio/build/native-dependencies
buildFeatures { prefabPublishing true } prefab { mylibrary { headers "src/main/cpp/mylibrary/include" } myotherlibrary { headers "src/main/cpp/myotherlibrary/include" } }
原生代码崩溃报告符号化解析
当原生代码发生崩溃或 ANR 时,系统会生成堆栈轨迹,即程序崩溃前所调用的嵌套函数序列的快照。这些快照可以帮助您识别和修复源代码中的问题,但是必须首先将它们符号化,以将计算机地址转换回人类可读的函数名。
如果您的应用或游戏是使用 C++ 之类的原生代码开发的,那么您现在可以将每个版本应用的调试符号文件上传到 Play 管理中心。Play 管理中心使用这些调试符号文件来符号化您应用的堆栈轨迹,从而简化崩溃和 ANR 分析。如果要将调试符号包含在 App Bundle 中,请将下方内容添加到项目的 build.gradle 文件中 :
android.buildTypes.release.ndk.debugSymbolLevel = 'SYMBOL_TABLE'
优化
System Trace 界面改进
在 Android Studio 4.1 中,我们对 System Trace 进行了全面改进,该优化工具可让您实时了解应用对系统资源的使用情况。通过框选模式还可以更轻松地选择跟踪记录,此外,我们还添加了新的分析标签页,并添加了更多的帧渲染数据,以帮助您调查应用界面中的渲染问题。
System Trace http://developer.android.google.cn/topic/performance/tracing
文档 : Android Studio System Trance 更新 http://medium.com/androiddevelopers/whats-new-in-android-studio-system-trace-5841465c5935
框选 : 在 Threads 部分中,您现在可以拖动鼠标来框选一个矩形区域,并点击右上角的 Zoom to Selection 按钮 (或使用键盘快捷键 M) 来放大该区域。当您将相似的线程拖放到一起后,可以跨多个线程进行框选以同时检查所有线程。
△ 在 Summary 选项卡中查看汇总统计信息
显示数据 : 在 Display 部分,SurfaceFlinger 和 VSYNC 的新时间轴可帮助您调查应用界面中的渲染问题。
SurfaceFlinge http://source.android.google.cn/devices/graphics/surfaceflinger-windowmanager
VSYNC http://source.android.google.cn/devices/graphics/implement-vsync
独立分析器
现在可以在独立于 Android Studio 主窗口的单独窗口中访问 Android Studio 分析器。在优化使用其他工具 (如 Unity 或 Visual Studio) 构建的 Android 游戏时,此功能十分有用。
要运行独立分析器,请执行以下操作 :
1. 确保您的系统现在没有运行 Android Studio 中的分析器。
2. 转到安装目录并导航到 bin 目录 :
Windows/Linux: <studio-installation-folder>bin macOS: <studio-installation-folder>/Contents/bin
3. 根据您的操作系统,运行 profiler.exe 或 profiler.sh
独立分析器可连接到 Android Emulator 或其他已连接的设备上。
△ 使用独立 Android Studio 分析器优化您的应用
原生内存性能分析器
跟踪原生内存的使用情况对于游戏开发者和其他使用 C++ 的开发者十分重要,他们可以据此优化其应用的内存使用。Android Studio 内存性能分析器 (Memory Profiler) 现在包含一个原生内存性能分析器 (Native Memory Profiler),专门用于运行在 Android 10 或更高版本的实体设备上的应用。原生内存性能分析器可以跟踪特定时间段内原生代码中对象的分配 / 销毁情况,并提供内存总体分配和系统堆剩余大小的信息。
要启动记录,请点击 Memory Profiler 窗口顶部的 Record native allocations:
△ 使用原生内存性能剖析器查看原生内存分配情况
总结
简要回顾一下,Android Studio 4.1 包括以下新增及改进功能 :
设计
-
Material Design 组件更新
开发
-
Database Inspector
-
直接在 Android Studio 中运行 Android 模拟器
Dagger 导航支持
-
使用 TensorFlow Lite 模型
构建和测试
-
Android 模拟器 – 可折叠设备铰链信息支持
Apply Changes 更新
-
从 AAR 中导出 C/C++ 依赖项
-
原生代码崩溃报告符号化解析
优化
-
System Trace 界面改进
独立分析器
-
原生内存性能分析器