65.9K
CodeProject 正在变化。 阅读更多。
Home

使用 Android vitals 调查应用程序崩溃

starIconstarIconemptyStarIconemptyStarIconemptyStarIcon

2.00/5 (1投票)

2018年10月9日

CPOL
viewsIcon

7411

在本文中,我们将探讨 Android Vitals 如何通过检测和修复应用崩溃来帮助您改进质量并提供令人愉悦的用户体验。

您的应用终于在 Play 商店上线了。恭喜!

但开发过程并未完全结束。您的应用是如何被使用的?您的用户遇到了什么问题?那个漂亮的按钮是否响应了点击?您的应用启动速度足够快,足以让用户满意吗?最重要的是,您如何知道您的应用在用户设备上的性能如何?

如果您想确保您的应用在竞争激烈、信息爆炸的 Play 商店中取得成功,那么回答所有这些问题至关重要。在本文中,我们将探讨 Android Vitals 如何通过检测和修复应用崩溃来帮助您改进质量并提供令人愉悦的用户体验。

Google Play 提供了多种工具,可帮助 Android 开发者构建高质量的应用、扩大用户群并创收。构建高质量的成功应用需要时间和大量的努力。考虑到这一点,Android Vitals 被添加到 Play Console,以提供与应用稳定性和性能相关的关键指标数据。通过这些数据,开发者可以确切地知道需要集中精力改进应用的质量。

为什么要关心性能?

这已不是秘密:出色的应用性能可以带来更高的应用评分,进而带来更多的安装量。用户会关注 Play 商店的应用评论和评分。糟糕的应用性能很少不被注意到。用户很容易放弃或完全删除性能不佳的应用,因为 Play 商店里充斥着许多替代品。事实上,GoogleAppDynamics 的独立报告证实,性能不佳的应用会很快被删除,并获得较低的评分。要在 Play 商店中取得成功,开发者必须确保他们的应用质量高并提供最佳体验。

对于付费应用和游戏,性能尤为重要。用户会要求物有所值。性能在很大程度上决定了这些应用的成功以及开发者能够从用户那里获得的收入。对于游戏而言,用户对糟糕的应用行为(包括崩溃、耗电和响应缓慢)的容忍度更低。没有人喜欢一款会随机崩溃、耗尽电池或响应不一致的游戏。

对构建高性能应用的需求怎么强调都不为过。

Android Vitals

在应用上线后跟踪应用性能是一项艰巨的任务。然而,Android Vitals 使这个过程变得毫不费力。Android Vitals 以有意义的方式收集和汇总来自用户的数据,让开发者能够无与伦比地了解他们的应用在用户设备上的表现。

*请注意,Android Vitals 仅收集已激活“使用情况与诊断”共享功能的用户数据。

收集的数据类型

Android Vitals 收集并报告以下广泛类别的数据

  • 稳定性

    对于稳定性,Android Vitals 会报告“应用程序无响应”(ANR) 和崩溃率。当应用的 UI 线程被阻塞很长时间时,就会发生 ANR。发生 ANR 时,用户可以选择退出或等待。另一方面,崩溃是由于未处理的异常导致的。

  • 电池使用情况

    电池电量是有限的资源,因此应谨慎管理。大量使用 CPU 的应用会迅速耗尽电池。在此类别中,Android 会报告唤醒锁、唤醒和网络使用情况。唤醒锁、唤醒和过度的网络使用会使用户的设备保持忙碌状态,从而影响电池寿命。

  • 启动时间

    用户期望应用能够快速加载。加载时间过长的应用会被视为无响应,并破坏用户体验。Android Vitals 提供了有关各种启动状态的信息:冷启动暖启动热启动

  • 渲染时间

    流畅的用户交互(每秒 60 帧)是目标。Vitals 会报告渲染时间较长的应用和出现冻结帧的应用(渲染时间超过 700 毫秒)。

  • 权限

    为了保护用户,Android 要求应用在执行任何敏感操作之前获得用户许可。在新的运行时权限格式之前,用户必须在安装时授予所有权限。这带来了一些安全风险。在新权限格式中,用户可以在运行时允许或拒绝权限。Android Vitals 提供了有关权限拒绝的信息。

在此处阅读有关每个指标的更多信息

Android Vitals 与其他工具有何不同?

Android Vitals 提供了与其他第三方工具类似的功能。它也有其独特之处。

您会注意到的一个关键点是,Android Vitals 无需任何设置工作。您不需要向应用添加任何代码,甚至不需要一个变量。唯一的要求是用户选择共享使用情况和诊断信息。您也不需要管理专用帐户。Android Vitals 可在 Google Play Console 中使用,您已经使用该控制台来管理您的应用。

应用可能在用户看到用户界面之前就崩溃了。对于第三方工具,这些崩溃几乎不可能检测到,因为崩溃报告库在崩溃发生时可能尚未初始化。然而,通过 Android Vitals,这些崩溃会被捕获和报告。此外,Android Vitals 允许开发者针对每个指标将他们的应用性能与其他应用进行比较。当他们的应用性能与其他同类应用相比显著下降时,开发者还会收到通知,这为开发者提供了快速修复问题的机会。

即使您使用其他崩溃报告工具,也应该依赖 Android Vitals,以便能够快速识别和修复应用中的性能瓶颈。

调查应用崩溃

要查看 Android Vitals 信息中心,请从 Google Play Console 中选择您的应用。在左侧菜单中,选择 Android Vitals,然后选择概览。

概览页面在顶部显示了核心 Vitals(崩溃、过多唤醒、ANR、卡死的唤醒锁)。这些指标被认为对应用性能更为关键。概览页面提供了所有指标的信息,并可进行筛选。点击“查看详情”可深入了解任何指标。

请注意,Android Vitals 仅在收集到足够数据后才会显示此信息。因此,某些应用可能不会显示任何统计数据。这可能是由于用户未共享使用情况和诊断信息,或者应用未使用会触发性能关键行为的功能。

捕获崩溃

并非所有崩溃都一样。有些崩溃很容易捕获,而另一些则非常难以查明。尽管如此,一旦您确定了崩溃的根源,调试就会变得容易得多。

应用崩溃和 ANR 在 Android Vitals 菜单下有专门的部分。要查看实时崩溃信息,请在“ANR 和崩溃”下选择“崩溃”。应用崩溃会显示为集群,旁边会显示报告数量和受影响的用户。您还可以根据 Android 版本、时间段、应用版本和应用安装来源筛选数据。

选择感兴趣的崩溃集群,以更深入地了解报告的崩溃。应显示详细视图。在此页面上,您可以查看发生的异常类型、每个崩溃的报告数量以及受影响的用户。您还可以获得有关应用版本、Android 版本甚至崩溃发生设备的列表的统计数据。一个很棒的功能是,您可以查看有关设备类型(如 RAM)的一些基本信息,这可能会提供有关崩溃的额外见解。

在页面底部,您可以访问崩溃日志。日志显示了发生的异常类型及其在应用中的来源。虽然并非总是如此,但这应该能让您对可能修复问题的操作有一个大致的线索。对于简单的崩溃,这可能只涉及将一段代码移到一个 try-catch 块中,就像上图所示。

What Next?

修复应用崩溃没有万能的解决方案。但是,以下几点在处理应用崩溃时可能会派上用场。

  • 使用像 Firebase Crashlytics 这样的良好崩溃报告工具,并结合 Android Vitals,以获得对应用崩溃的更深入的洞察。
  • 尝试 Kotlin。Kotlin 在 Android 上得到官方支持,并且与 Java 完全互操作。Kotlin 的类型系统有助于消除 NullPointerException,这让许多开发者头疼。许多流行的应用(包括 Slackbusuu)都是使用 Kotlin 构建的。
  • 使用 Android Jetpack。Jetpack 为 Android 开发者提供了一系列组件,可用于快速构建健壮、高质量的应用。这些组件确保开发者遵循最佳实践,并减少应用出错的可能性。
  • 阅读有关 Android 最佳实践和指南的文档。虽然这可能无助于直接修复崩溃,但您将获得有关如何避免崩溃和提高应用性能的专家提示。

结束语

正如我们所见,应用性能和稳定性对于在 Play 商店中取得成功至关重要。Android Vitals 可以在几乎不费吹灰之力的情况下免费帮助您实现这一目标。随着路线图上新增功能,您只会期待更好的方法来提高应用性能。

如果您从未检查过您应用 Vitals,请前往您的 Play Console,准确了解您的应用表现如何,以及您错过了所有红色警报,并让信息指导您的决策。您可能会发现,您的用户迫切需要修复其中一项 Vitals,而不是对用户界面进行另一个花哨的更改。

要了解更多有关 Android Vitals 的信息,请查看指南。祝您在提高应用性能和用户体验方面取得成功。

© . All rights reserved.