在移动设备上开发软件,性能一直是我们最为关心的话题之一,我们作为程序员除了需要努力提高代码质量之外,及时发现和监控软件中那些造成性能低下的”罪魁祸首”也是我们神圣的职责。
众所周知,iOS平台因为UIKit本身的特性,需要将所有的UI操作都放在主线程执行,所以也造成不少程序员都习惯将一些线程安全性不确定的逻辑,以及其它线程结束后的汇总工作等等放到了主线,所以主线程中包含的这些大量计算、IO、绘制都有可能造成卡顿。
近日,本人使用了友盟+应用性能监控平台U-APM 卡顿分析功能进行,接入最新U-APM SDK后即可在后台免费监控iOS卡顿问题,帮助开发者评估应用性能,保障应用质量。
应用性能监控平台U-APM正处于产品快速迭代期,十分重视开发者的需求与建议,友盟+基于在移动端的沉淀,本次快速上线可支持双端采集的卡顿分析功能。借助卡顿分析开启U-APM性能相关功能的序幕,为开发者提供免费且好用的线上应用性能监控工具。
卡顿分析功能可支持iOS全量采集。提供卡顿趋势分析、卡顿列表及卡顿详情日志、支持分系统版本、运营商、App版本、设备等6个纬度的查看卡顿分布;我们抽象了发生卡顿问题的堆栈信息构成卡顿模块,可通过倒序/正序聚合查看发现影响性能的最底层方法/核心原因。通过智能告警的方式推送到企业线上办公工具或邮件能力,便于团队内快速响应跟进问题。
因此本次卡顿功能发布大致可概括为:
●支持iOS双端卡顿采集与分析
●双向智能聚类
●卡顿智能告警
●支持查看卡顿趋势/多维度分布和详情信息卡顿分析
对开发者来说,接入方式也是超简单,只需满足以下条件,即可实现Android 和iOS双端的接入:
Android端:U-APM SDK版本 V1.2.0及以上;基础组件包commonV9.3.8及以上。需要注意的是在工程build.gradle配置脚本中buildscript和allprojects段中添加【友盟+】SDK新maven仓库地址;
iOS端:U-APM SDK版本 V1.2.0及以上;基础组件包commonV7.2.8及以上。
以上图片展示了友盟+U-APM 的卡顿分析功能,U-APM 是友盟+推出的App稳定性监控、性能监控和云真机测试平台。通过轻量级的集成接入即可拥有实时、可靠、全面的应用崩溃、ANR、自定义异常等捕获能力,及卡顿、启动分析等性能能力,支持多场景、多通道智能告警监控,帮助开发者高效还原异常、卡顿用户的访问路径和业务现场,缩短故障排查时间。另外还提供云真机测试能力,助力开发者从研发测试质量验收到线上问题复现排查,保障应用品质,提升测试效率。在云真机测试期间自动采集崩溃信息,提供详尽的崩溃报告协助筛查,真正实现监控测试全流程深度打通。