Skip to Content
使用 Kotlin 进行 Android 编程
book

使用 Kotlin 进行 Android 编程

by Pierre-Olivier Laurence, Amanda Hinchman-Dominguez, G. Blake Meike, Mike Dunn
May 2025
Beginner to intermediate content levelBeginner to intermediate
354 pages
4h 24m
Chinese
O'Reilly Media, Inc.
Book available
Content preview from 使用 Kotlin 进行 Android 编程

第 11 章 使用 Android 剖析工具的性能考虑因素 使用Android 剖析工具的性能考虑因素

本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com

在 Android 中使用熟练的并发性可以提高应用程序的性能。这就是我们将 Android 中的 Kotlin 并发作为本书主要重点的原因。为了提供性能瓶颈的解决方案,您必须能够在第一时间发现它们。不用担心:本章将介绍常用的 Android 工具,以检查性能方面的潜在问题。

在野外,安卓系统面临着影响性能和电池寿命的现实挑战。例如,并不是每个人的移动计划中都有无限数据,也不是每个人都有可靠的连接。现实情况是,Android 应用程序必须相互竞争有限的资源。任何 Android 应用程序都必须认真考虑性能问题。Android 开发不仅限于创建应用程序。有效的开发还能确保流畅无缝的用户体验。即使您对 Android 开发有深入的了解,您的应用程序也可能存在以下问题:

  • 性能下降

  • 启动慢/对用户交互的响应慢

  • 电池耗尽

  • 浪费资源,堵塞内存

  • 不会导致崩溃或产生异常,但会影响用户体验的用户界面错误

以上列举的应用程序中突然出现的奇怪行为并非详尽无遗。正如前面几章所展示的,如果还要跟踪交互的 Android 组件,管理多线程就会变得复杂。即使你对多线程有扎实的了解,在使用剖析工具分析性能之前,也很难说应用程序到底是如何运行的。为了解决这些模糊问题,有几种有用的工具可以对 Android 的各个方面进行剖析。如图 11-1 所示,其中四个可以在 Android Studio 中直接检索和使用。

Android Studio profilers
图 11-1. Android Studio 剖析器和 LeakCanary 对于识别性能瓶颈非常有用。

在本章中,我们将介绍 Android Studio 的Android Profiler和一个名为LeakCanary 的流行开源库中的剖析工具。我们将通过剖析现实生活中的应用程序来找出潜在的性能瓶颈,从而探索每一种剖析工具。还记得前几章介绍的登山应用程序吗?惊喜吧!它的灵感来自 TrekMe。TrekMe 是一款 Android 徒步旅行应用程序,它是一个开源 Android 项目,用户可以下载交互式地形徒步旅行路线,以便在徒步旅行时离线使用。TrekMe 一开始是一个 Java 项目,但目前其代码库 80%+ 是 Kotlin。以下是 TrekMe 的一些重要功能,用户可以从中受益:

  • 下载供离线使用的地形图。

  • 即使在没有网络的情况下,也能获取设备的实时位置,同时该应用会尽力延长电池寿命。

  • 在您最需要的时候,详细跟踪远足情况,而不会耗尽设备的电池。

  • 无需互联网连接即可访问其他有用信息(创建地图除外)。

我们鼓励你探索 TrekMe,以便跟上本章的进度。你可以从 GitHub 获取源代码。克隆项目后,用 Android Studio 打开它。最后,从安卓虚拟设备(AVD)管理器中运行一个模拟器实例,你打算在该模拟器上运行 TrekMe。

性能方面的考虑至关重要。在任何应用程序中发现性能滞后并不罕见,但必须谨慎对待这种 "钓鱼考察"。开发人员应自行决定最相关的工具,以及哪些优化措施的收益大于创建成本。对应用程序进行剖析可以客观地调查应用程序的性能。为了举例说明您可能会遇到的意外情况,我们将使用 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Java 到 Kotlin

Java 到 Kotlin

Duncan McGregor, Nat Pryce
《Java 思维》,第二版

《Java 思维》,第二版

Allen B. Downey, Chris Mayfield

Publisher Resources

ISBN: 9798341659131Supplemental Content