16 | 性能监控:衡量 App 质量的那把尺
戴铭
该思维导图由 AI 生成,仅供参考
你好,我是戴铭。
通常情况下,App 的性能问题虽然不会导致 App 不可用,但依然会影响到用户体验。如果这个性能问题不断累积,达到临界点以后,问题就会爆发出来。这时,影响到的就不仅仅是用户了,还有负责 App 开发的你。
为了能够主动、高效地发现性能问题,避免 App 质量进入无人监管的失控状态,我们就需要对 App 的性能进行监控。目前,对 App 的性能监控,主要是从线下和线上两个维度展开。
今天这篇文章,我就从这两个方面来和你聊聊如何做性能监控这个话题。接下来,我们就先看看苹果官方的线下性能监控王牌 Instruments。
Instruments
关于线下性能监控,苹果公司官方就有一个性能监控工具 Instruments。它是一款被集成在 Xcode 里,专门用来在线下进行性能分析的工具。
Instruments 的功能非常强大,比如说 Energy Log 就是用来监控耗电量的,Leaks 就是专门用来监控内存泄露问题的,Network 就是用来专门检查网络情况的,Time Profiler 就是通过时间采样来分析页面卡顿问题的。
如下图所示,就是 Instruments 的各种性能检测工具。
图 1 Instruments 提供的各种性能检测工具
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文介绍了iOS App线上和线下性能监控的重要性,并详细介绍了苹果官方的线下性能监控工具Instruments。该工具集成在Xcode中,能够进行性能分析,监控耗电量、内存泄露、网络情况和页面卡顿等问题。最新版本的Instruments 10支持所有平台,并提供了自定义性能监测工具的开发功能。此外,文章还介绍了对CPU使用率、FPS帧率和内存的线上监控方法。通过遍历线程并累加cpu_usage字段,可以获取当前App所在进程的CPU使用率。对于内存使用量的监控,文章提到了phys_footprint字段的值,用于监控实际物理内存的使用情况。总的来说,本文强调了通过线下和线上监控来掌控App的性能,并建议开发者摸透苹果公司自己的库和工具,以提高开发效率。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《iOS 开发高手课》,新⼈⾸单¥59
《iOS 开发高手课》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(18)
- 最新
- 精选
- xilie要不还是介绍下第三方的监控平台,小公司,监控后台都没人做啊
作者回复: 推荐的话,做的好的是蚂蚁的 mPaaS
2019-05-294 - 小阳哥每2s去遍历线程 这个不会有问题吗?
作者回复: 不会的
2019-04-1724 - 小城内存线上监控,不是针对多个线程,而是直接从结构体里面取出phys_footprint就可以?
作者回复: 是的
2019-05-301 - 异界图片名字,使用中文,会影响性能吗(项目中90%以上使用的中文命名图片)?
作者回复: 不会
2019-05-051 - drunkenMouseCADisplayLink:与屏幕刷新频率的计时器同步,每次屏幕刷新都会调用一次,所以可以获取到一秒钟屏幕刷新的次数。 线下监控:Instrument,一个工具检测所有。 线上监控:CPU使用直接获取所有线程的cpu_usage计算综合,内存消耗使用task_basic_info的phys_footprint,FPS用CADisplayLink。2019-04-1720
- 李二柱子对于性能的监控有没有衡量标准,如何衡量优劣?2019-04-173
- Onion监控起来如何分析,有实践方案嘛2019-04-163
- 一代真龙线上电量监控是监控不了的。现有的方案都是不可行的,没有参考价值。2019-04-182
- CoderY文中提到“集成多个公司 SDK 的情况,所以我们就需要以黑盒的方式来进行性能监控”,请问大佬这块具体怎么监控?2020-04-241
- 张玉棠time profile 工具再最新的xcode版本上收集不到数据,作者你有遇到过吗?2019-08-181
收起评论