Links

10.「利用 Metrics 和 Diagnostics 提高性能」网络研讨活动

前言

之前参与了Apple「利用 Metrics 和 Diagnostics 提高性能」网络研讨活动,之前只简单的总结了一下,现在整理一下。感觉有些东西还是挺实用的。

一:内存指标

  • 平均挂起内存和峰值内存
  • 内存管理会影响启动时间(冷启动热启动)
  • 通过这些指标了解内存的使用,可以:
    • 发现难以重现的内存泄露问题
    • 减小挂起平均内存
      • 减少挂起内存占用有助于减少应用在后台被释放的几率

二:MetricKit

  • 搜集电池和性能指标和诊断的框架
  • 应用内接入后就可以通过API获取丰富的性能指标数据
  • 如果有必要可以将数据上报到自己的平台上,也可以作为开发过程中西能调优的工具

三:Xcode Metrics Organizer

XcodeWindow下拉菜单选择Organizer
MetricsXcode
OrganizerCrash
这里是可以选择版本的包含:AppStore(Release) 和 TestFlight(Beta)
  • Reports
    • 这里的数据也是系统自动收集的,前提是用户需要允许给Apple共享数据
    • Crashes
      • 实测是可以看到具体崩溃信息的,无须上传符号表
        • 自己的小项目没有太多的崩溃可以看,后面找时间看下公司的项目的信息
    • Disk Writes
      • 没看到数据,可能是有异常才会上报吧
    • Energy
      • 没看到数据,可能是有异常才会上报吧
  • Metrics
    • 无须应用内集成MetricsKit就可以看到相关数据
    • 前提是用户量达到一定的水平
      • 具体是多少并没有提到,反正我自己的小App是没有的TAT
    • 需要用户在设置系统的时候统一将数据共享给Apple,否则是没有该用户的数据的
    • 所有数据都是苹果系统内自动收集上报的

四:App Store Connect API

这是苹果提供的一套REST API接口,可以直接通过请求获取Metrics数据。
但是需要和上面的满足一样的前提:达到一定用户量

五:参考