美文网首页
iOS性能测试指标

iOS性能测试指标

作者: Maggie的小蜗居 | 来源:发表于2019-06-18 16:10 被阅读0次

    1.启动时间

    App的启动分为冷启动和热启动。如果启动时间过长,首先引起的用户体验直线下降,再者是可能会激发苹果的watch dog机制kill掉App。APP的启动时长检测传送门:https://www.jianshu.com/p/12b4803a2581

    2. CPU占用率

    CPU做为手机中央处理器,可以说是手机最关键的组成部分,所有的应用程序都需要它来调度运行,资源有限。所以如果App的设计不当,会使CPU持续高负载进行,将会出现App卡顿,手机发烫,电量消耗过快的影响用户体验的现象。

    如何获取CPU占有率呢?---》 https://www.jianshu.com/p/36dc78198a08

    3. 内存

    虽然现在手机内存越来越大,但毕竟是资源有限的。如果因为系统设计造成内存过高,可能面临被系统kill掉的风险,对用户来说就是crash,体验极其差。

    首先需要了解下iOS内存管理机制

    1. 为什么要内存管理?

    OC对象在内存中以堆的方式分配空间,堆内存是由我们自己释放。就是release,非OC对象一般是在栈中,系统自动回收

    2. 什么情况下内存会增加?

    定义变量,创建对象,调用函数或者方法

    3. OC如何进行内存管理?(原理就是引用计数)

       I.  iOS5之前使用MRC(手动引用计数),需要手动调用retain,release,autorelease

       II. ARC(自动引用计数),内存管理由系统接管(本质上也是调用retain,release,autorelease)

    原则是 遵循谁创建,谁管理,谁引用,谁释放

    内存获取请参考:https://www.jianshu.com/p/2b8e80a1ae37

    4.FPS

    fps:Frames Per Second 

    屏幕渲染过程是有信号发送的,一帧一帧的。

    FPS每秒显示60帧,帧数越高越流畅,每隔16ms就会有一次VSync信号

    那为何会出现卡顿?

    首先看下屏幕内容显示过程

    1. CPU完成计算之后,GPU渲染,收到垂直同步信号,将渲染的内容显示到屏幕

    2. 若CPU计算正常或较慢,GPU渲染时间较长,这时来了垂直同步信号,这一帧还没有渲染完,就会出现掉帧情况,当下一个VSync信号出现时,丢掉的那一帧才会显示出来

    1

    fps检测传送门:https://www.jianshu.com/p/d6d4d4624038

    5.电量获取

    官网步骤:

    https://help.apple.com/instruments/mac/current/#/deva0db8947

    https://www.jianshu.com/p/91e5f0a0894b

    https://developer.apple.com/library/archive/documentation/Performance/Conceptual/EnergyGuide-iOS/MonitorEnergyWithInstruments.html

    相关文章

      网友评论

          本文标题:iOS性能测试指标

          本文链接:https://www.haomeiwen.com/subject/yvgofctx.html