Frame分析
=======

#### 功能介绍

开发应用或元服务过程中，如果发现有表单滑动不顺畅、页面交互延迟、动效不流畅等卡顿现象时，可以使用DevEco Profiler提供的Frame场景分析能力，录制卡顿过程中的关键数据并进行分析，从而识别出导致卡顿丢帧的原因。

Frame模板支持的泳道包括：Anomaly、User Events、Frame、ArkUI Component、ArkUI State、User Trace、ArkTS Callstack、Callstack、Network Traffic、Network Request、Energy、CPU Core、Process。本文介绍Anomaly、User Events、Frame泳道，其他泳道的详细信息请参考对应模板内容。

*   ArkUI Component、ArkUI State泳道的介绍请参考[ArkUI分析](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/ide-arkui-analysis)。
*   User Trace、ArkTS Callstack、Callstack泳道的介绍请参考[基础耗时：Time分析](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/ide-insight-session-time)。
*   Network Traffic、Network Request泳道的介绍请参考[网络诊断：Network分析](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/ide-profiler-network)。
*   Energy泳道的介绍请参考[能耗诊断：Energy分析](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/ide-profiler-energy)。
*   CPU Core、Process泳道的介绍请参考[CPU活动分析](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/ide-insight-session-cpu)。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/3b/v3/eKD0PbN5SVm0-tUiNuEI3w/note_3.0-zh-cn.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=C44FB40E19B8E4C679EEE95FE1515882D850ECEBEC18981D54C937FCDF747A22)

卡顿丢帧分析前，需创建Frame分析任务并录制相关数据，操作方法可参考[性能问题定位：深度录制](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/deep-recording)，或在[会话区](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/ide-profiler-session)选择**Open File**，导入历史数据。

#### 查看GPU使用情况

**Frame**泳道显示当前设备的GPU的使用率，将其展开，子泳道显示渲染服务（Render Service）侧帧数据和App侧帧数据。

在带有**RS Frame**和**App Frame**标签的子泳道中，正常完成渲染的帧显示为绿色，出现卡顿的帧显示为红色。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/40/v3/bnhNEIhaQX-8IXSbua6VlA/note_3.0-zh-cn.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=ABEEDAE082A0279BF4C31DD36E8A52EF83F00177F143F3EADEEB8B566DC01908)

*   一帧的绘制，一般需要由App侧提交渲染到Render Service侧，然后Render Service侧再提交给硬件进行合成渲染，因此App侧的帧和Render Service侧的帧存在关联的情况。并且可能多个APP侧的帧/同一APP侧的多个帧提交到同一个Render Service侧帧上，出现帧之间的一对多的关联情况。
*   一帧绘制的期望耗时，与fps的大小有关，一般情况下fps为60，对应的Vsync周期为16.6ms，即App侧/Render Service侧的帧耗时，一般需要在16.6ms以内。App侧帧/Render Service侧帧判断卡顿的标准为帧的实际结束时间晚于帧的期望结束时间。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/0d/v3/jOPGjVdjTkKmXzI7b_x9yQ/zh-cn_image_0000002594474540.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=2C9176BE91AF33CAC423C912FFF291A42F073C0CA241CB6EA2D086B222E76162 "点击放大")

#### 查看指定时间段内所有进程的Frame数据统计信息

1.  在时间轴上拖拽鼠标选定要查看的时间段。
2.  框选**Frame**主泳道。窗口下方的**Statistics**区域以进程维度展示了选定时间段内的Frame相关信息，包括卡顿率、卡顿次数、最大连续卡顿次数、最大卡顿耗时、平均卡顿耗时以及平均正常耗时等。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/33/v3/RuDTaTmWSs-vi6RFquWozw/zh-cn_image_0000002624993909.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=4DBF737D8D3DCBDB9B8A21501E382488AD54E860274793FC9F10E15AC8509551 "点击放大")
    
3.  点击**Statistics**列表中任一进程的跳转按钮会跳转至**Frame List**，该区域展现该进程各帧的起始时间、总耗时、GPU耗时以及卡顿丢帧类型。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/68/v3/UoPSWoL9SFaFdQHeI4Fw9A/zh-cn_image_0000002594634456.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=133AC8D639B3DC5653176BB7C2A5A2624B54D67E68AB6E615EA3329A6B2CE7B3 "点击放大")
    
4.  点击Frame List中任意一帧，在右侧的**More**区域会中显示该帧更多关键信息。在获取该帧的预期起始时间、预期持续时间之外，您可以单击![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/4/v3/0K-9Y_7rQAakp90fTTp53Q/zh-cn_image_0000002594634460.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=049D82C2D188C89521319332BF369085389FF7AE1BF21645B519DC1833749CBC "点击放大")跳转至关联的切片。

#### 查看指定时间段内指定进程的Frame数据统计信息

1.  在时间轴上拖拽鼠标选定要查看的时间段。
2.  展开**Frame**主泳道，选择要观察的带**App Frame**或带**RS Frame**标签的子泳道。
    
    窗口下方的**Details**区域中会显示选定时间段内的RS帧统计信息列表，体现各帧的起始时间、总耗时、GPU耗时以及卡顿丢帧类型。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/56/v3/LewxYeqGTNOZBTgA6CeI_w/zh-cn_image_0000002625074047.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=9B473EDED8331BEB33BE76219AE86BBA1731A6E98445683FC5C075AD4E6E1D42 "点击放大")
    
3.  单击列表中任意一帧，右侧的**More**区域中会显示该帧更多关键信息。在获取该帧的预期起始时间、预期持续时间之外，您可以单击![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/93/v3/OGfho7WMTEaUeCLpuO2U0g/zh-cn_image_0000002594474522.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=0D641A07A39C3AFBEE71C85E45837C6C29E968DF499A2D72C854A8E294B71678 "点击放大")跳转至关联的切片。

#### 查看指定Frame信息

展开**Frame**主泳道，选择带**App Frame**或带**RS Fram****e**标签的子泳道，该[泳道图区域](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/ide-profiler-data)上方是耗时最长的非UI函数，下方是UI主线程泳道。将鼠标悬浮在任意帧上，会冒泡显示该帧的Jank信息。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/cf/v3/xuYVt6oxTrGU46OuKikZNw/zh-cn_image_0000002594634454.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=6EAADCE6241FFC7A82EFE0891A67207BA1FC16070160D9B89206549B8C246986 "点击放大")

窗口下方的**Frame**区域中会显示选定帧的关键信息，如VSync编号、开始时间、App应用侧持续时间、App应用侧业务逻辑耗时、Render Service侧持续时间、GPU持续时间、总持续时间、卡顿丢帧类型以及可能出现卡顿的原因等。在带**App Frame**标签的子泳道中，**Non UI**区域中会显示非UI耗时最大的函数，如开始时间、结束时间、持续时间，函数名等。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/5b/v3/8iGJgmSIS56HIh_7--0nOQ/note_3.0-zh-cn.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=54AC63DD0C7AAB43BEF6D4AAEA3333A6B6E69504B0B478A8464512D301119228)

*   在选定观察对象后，DevEco Profiler会自动关联与其相关的切片，用箭头连接。
*   如果该帧是由于超出期望结束时间引起的，则显示两条线，对应期望开始时间（Expected Start）和期望结束时间（Expected End），用于关联分析同一时刻Trace或者函数采样信息。
*   卡顿丢帧类型（Jank Type）：No Jank（不卡顿）、AppDeadlineMissed（App侧的卡顿）、RenderDeadlineMissed（Render Service侧的卡顿）。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/d9/v3/5eLLe5wKRMqhSRSs4sX0Jg/zh-cn_image_0000002624993895.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=76C74759D5DC62A71BCF3851AE6059405B3E350D37A379F5D176C443E46D40A7 "点击放大")

#### 查看指定Frame页面布局信息

从DevEco Studio 5.1.0 Release版本开始，支持查看最新录制的Session中指定的Frame页面布局信息。

从DevEco Studio 6.1.0 Beta1版本开始，![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/38/v3/gXstvaujR_6YPU9sDa6qHg/zh-cn_image_0000002594634442.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=2D09B333DCB7F1ACE636BD0894549A58D7BBE18F1BAF1352D65FBA8DD3F407EA "点击放大")按钮中新增Frame Layout开关，开发者可自行设置开关状态。开关关闭时，不支持查看最新录制的Session中指定的Frame页面布局信息，默认关闭。

暂不支持在Wearable设备上查看指定Frame页面布局信息。

1.  展开**Frame**主泳道，单击带**App Frame**或带**RS Frame**标签的子泳道中任意一帧，**Details**区域会展示该帧具体信息。点击**Open Layout**按钮，将在ArkUI Inspector中直接打开相应arkli文件；点击**Download Layout**将arkli文件下载到指定目录，之后可手动导入[ArkUI Inspector](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/ide-arkui-inspector)查看页面布局信息。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/6c/v3/701WlKR0StWOqZN_XLpAog/note_3.0-zh-cn.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=43FF9726FEEF17E60F6117EDCB2A71F42031AA36A0F629EF22FE4378B89657A6)
    
    单击Download Layout或 Open Layout前，应用进程需置于前台，才能正确回放全量渲染数据，获取arkli文件。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/aa/v3/7XA6-07ASlm-0c9JDRBkdw/zh-cn_image_0000002594474546.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=B51E0622A80B812E722AF74E1E69A4D43662E2923A6FACEED6744EDA270FB8DE "点击放大")
    
2.  在ArkUI Inspector中可查看组件树和组件属性信息，当前支持BackgroundFilter、nodeGroup、nodeGroupReuseCache组件。
    
    *   BackgroundFilter：背景滤波器。
    *   nodeGroup：节点组类型，0表示非节点组节点，1表示被动画标记的节点组，2表示被UI标记的节点组，4表示被用户标记的节点组，8表示被前景滤波器标记的节点组。
    *   nodeGroupReuseCache： 0表示在生成缓存或无需缓存，1表示在重用缓存。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/f0/v3/e6mNFeuaRu2Uqj-tc8GuWA/zh-cn_image_0000002594474532.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=D01607CEAFB05317EFEC0A7CBBAA588FEA44BA4AEF9FFD229CB3731BDC728D0A "点击放大")
    

#### 查看帧率统计信息

1.  展开**Frame**泳道，框选一段数据。
2.  带**App Frame**和**RS Frame**标签的子泳道会出现FPS标记，展示当前框选范围内的帧率统计信息。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/94/v3/InwICubBSt6o7WmMPuPLGw/zh-cn_image_0000002624993893.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=2406FA2D17EF4AA1EB07133B0E0A274A16C35A33FAE49260341EFDA705F40785 "点击放大")
    
3.  在带**RS Frame**标签的子泳道中打开Only ArkWeb data开关，筛选过滤出包含ArkWeb帧的数据。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/a/v3/X_t5RqojRmyCaoG7ddQ6Gg/zh-cn_image_0000002594634458.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=810409CAEE81AF0E105519B70782B353686FDCDDB129A3259CB3927CED87A4E3 "点击放大")
    

#### 查看动效详细信息

开发者在开发应用时，会使用到动效，动效的卡顿影响到用户的使用体验。DevEco Profiler提供动效场景的调优，能帮助开发者优化动效场景。

展开**Frame**主泳道，查看**Animation**子泳道，将鼠标放置在某个动效上，泳道会显示该动效的详细信息，包括响应时延、动效持续时间、完成时延、期望帧率、FPS。

*   响应时延：<=85ms 绿色，85ms~150ms 浅绿色，150ms ~250ms 浅红色，>250ms深红色。
*   动效持续时间：根据帧率展示颜色，FPS大于达标帧率即为绿色，小于则为深红色。智能刷新率模式下，帧率可变，颜色为灰色。达标帧率与期望帧率的大小有关，一般情况下期望帧率为60HZ，则达标帧率= 60HZ \* 91.7%。
*   完成时延：响应时延和动效持续时间只要有一个为深红色，完成时延为深红色。
*   期望帧率：当前系统运行满帧帧率，如60HZ、90HZ、120HZ。智能刷新率模式下，不展示期望帧率。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/d8/v3/AS7-6FiAQkC9sv1FdE4Bvg/note_3.0-zh-cn.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=78EEE3BF65DE5D6CABB9A885FF30D18B6A060C403ED5E71B6CA65259D2812E65)

在[Launch模板](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/ide-insight-session-launch)中，点击Frame泳道，**Details**区展示启动动效的详情信息，**More**区域展示动效帧的Animation Data List信息。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/2e/v3/3byd4sHITuu5qXtkwGXoyg/zh-cn_image_0000002624993887.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=8E4D058F8F83B6C438A871CC9CEF368234B3910B6232DA694283D8D7A9B3ED98 "点击放大")

#### 查看组件动画信息

从DevEco Studio 6.0.0.828版本开始，Frame泳道下新增Component Animation子泳道，用于从组件的角度展示应用中包含的各种动画类型，包括属性动画 (animation)、显式动画 (animateTo)、关键帧动画 (keyframeAnimateTo)以及页面间转场 (pageTransition)。

在**Details**区域，可以查看每个动画的详细信息，包括起止时间、帧率、动画曲线类型以及影响的组件属性等。单击列表中任意一动画，右侧的**More**区域中会显示该动画所影响的组件属性的具体变化过程。

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/9a/v3/YiItCN9qSiuT6xZTCB0jug/zh-cn_image_0000002594634462.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=B88582A33FBCDA7D710662822BDA3397E88720A5D75B408972F7441992ED8337 "点击放大")

#### 查看屏幕帧率动态变化场景下丢帧和卡顿信息

Frame泳道下新增Lost Frames和Hitch Time两个子泳道，用于识别和优化卡顿和丢帧问题。

*   Lost Frames子泳道：展示当前时间段内丢帧数。Lost Frames计算出的结果，六舍七入统计取整。
*   Hitch Time子泳道：展示当前时间段内卡顿时长。计算方式为渲染前后两帧的间隔减去单帧耗时，若计算结果大于单帧耗时\*70%，则视为出现卡顿现象。

1.  创建Frame模板并录制会话，如存在卡顿和丢帧现象，会在**Lost Frames**和**Hitch Time**子泳道对应时间显示矩形图。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/43/v3/xIdhsAGDRZGARq941L8ylw/zh-cn_image_0000002594474536.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=927D1FB83253D0F0EA2A3E06A695DB2E054F9E001BFD9C8861052CFAA3FFC391 "点击放大")
    
2.  鼠标悬浮到泳道图区域某一时间点，提示信息会显示该点所属时间段内的丢帧数以及卡顿时间。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/28/v3/T7FBD8hSR0ugjhGuNy5hqA/zh-cn_image_0000002594634438.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=46BA45F0DBB7C288BAA3D2DDB16567725A1FB1AE9B6C95449739CB840065BB4A "点击放大")
    

#### 查看组件帧率信息

Frame泳道下新增两个子泳道，分别为Display Vsync与DisplaySync\_cb(tid)，用于对可变帧率的检测调优。

*   Display Vsync子泳道：该泳道显示对应时间段的屏幕刷新率，支持对框选的时间段内的vsync进行分布统计。区分“<=30HZ”、“30~60HZ”、“60~90HZ”、“>90HZ”。统计值包括框选时间段内各区间的分布比率、最小/最大/平均时长以及平均HZ。如果某场景满足了帧率改变的要求，当底层系统根据机制进行变帧，相应的情况会展现在对应的泳道，帮助开发者了解vsync的变化情况是否符合预期。该泳道仅支持在配备硬件屏幕的设备上进行数据采集。
*   DisplaySync\_cb(tid)子泳道：该泳道显示对应组件的帧率，如DisplaySync、XComponent两类接口组件动画对应的帧率。调测时，不同场景下由于帧率可变，系统实际表现是否符合预期，需要有实际的检测手段。尤其是由于DisplaySync的渲染均在UI主线程执行，当存在多个需要渲染的组件需要同时执行时，只能在UI主线程排队，此时任何一个组件的延迟都会对其他组件的渲染产生影响，导致UI卡顿。
    
    如下图所示，vsync2和vsync4中，vsync周期内的组件由于渲染耗时长，导致以下两个vsync周期挤掉下一个vsync周期的渲染时间，导致掉帧的情况产生。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/fc/v3/S_ambSVXQ8eDnYqeJ77EpA/zh-cn_image_0000002625074031.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=C93477094879CADAFB9A76A67ACAA52D112EE59D9BF4918361ADAA6CF608B2E4 "点击放大")
    

1.  选择**Display Vsync**子泳道，在时间轴上拖拽鼠标选定要查看的时间段。
2.  详情区显示当前时间段的屏幕刷新率，当前帧最大持续时间、最小持续时间、平均持续时间以及该时间段内平均帧数。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/53/v3/w4BFnch2TYyMiJKQPIg_Uw/zh-cn_image_0000002594474548.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=012EED12CB6ABF1550AB40AB1CD12E33AB91D2F70B4DEA7724D4C2717C6CEF53 "点击放大")
    
3.  选择**Display Vsync**子泳道，可以查看当前帧的耗时和帧率。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/20/v3/OpjSIxHbTu6DfxWPfq0I2A/zh-cn_image_0000002625074053.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=F02A0C6F5F78AB458642E127FB5E7649A4CE03D6C0EE8CC5B77A22FCE514DA00 "点击放大")
    
4.  框选**DisplaySync\_cb**子泳道，可以查看应用侧对应组件的帧率，渲染时间等信息。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/1f/v3/3n-RX3dwRNidHA4yeKkDzw/zh-cn_image_0000002625074049.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=4D8641A872D41C47419381DD5EB2BD31B704A44E3A8DB73AB7421602C730D3A6 "点击放大")
    
5.  同时如果组件有可能的掉帧情况，**DisplaySync\_cb**子泳道显示对应的掉帧情况并标红展示。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/b5/v3/t1T2PQzpSyi4Jzwr55jTtQ/zh-cn_image_0000002624993891.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=B5C5717EB8A612EC68A2DCF4DDAFF9E17130456E8E6DC893935ECE5AA512083E "点击放大")
    

#### 查看解码过度耗时和超过阈值的序列化、反序列化操作

如果工程中存在图片资源，并感知到解码绘制/渲染过程存在卡顿，可以通过Anomaly泳道查看主线程解码过程中是否存在解码过度耗时告警，并确认发生告警的时段。

如果应用中使用了worker、Taskpool工作线程等场景，通常会触发跨线程对象传递，并触发序列化和反序列化的操作。对于耗时超过阈值的序列化、反序列化操作，Anomaly泳道也会给出对应的耗时告警，并给出发送这个操作的开始时间和耗时时间。

1.  在时间轴上拖拽鼠标选定出现告警的时间段。当耗时超过VSync周期的50%时，将在**Anomaly**泳道中出现红色告警，提示“Image decoding has exceeded 50% of the VSync time”。
2.  详情区给出录制时段内解码过度耗时的统计情况，包括类型，图片名，计数，总耗时，最小耗时、平均耗时、最大耗时，耗时标准差、 图源尺寸大小，目标尺寸大小等。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/2c/v3/L5QrenLYQ2aoyn6gaDHp5A/zh-cn_image_0000002625074043.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=7A3D80138B477D2BEFAAAE3729EE87ACE32913A16D861A90A10179675AE6C4BD "点击放大")
    
3.  对于耗时超过阈值的序列化、反序列化操作，**Anomaly**泳道也会给出对应的耗时告警。其中可以通过泳道启动配置按钮配置检测阈值，默认配置阈值为8ms。
4.  详情区给出录制时段内序列化、反序列化耗时情况统计信息，包括类型、计数、总耗时、最小耗时、平均耗时、最大耗时、耗时标准差等。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/60/v3/gFHAKL6IToO_O5mn2ctWYg/zh-cn_image_0000002594474520.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=C95DFD7EA340B0738B48947DEE281899D8C27E89BEBBA586BDFDD6248EF4DA00 "点击放大")
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/0d/v3/Sj-YU8meTBmBGUNQgFcuGQ/note_3.0-zh-cn.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=E2AFBF9D8623E5C492CA2E7EE421E3BEFCE8C24430F90EEB01D6D7C5C0136569)
    
    已上架应用市场的应用不支持录制Anomaly泳道。
    

#### 查看用户事件耗时

开发者在卡顿丢帧场景可通过User Event泳道查看用户事件，可查看用户事件开始时间、应用开始处理时间以及应用处理耗时等情况。

1.  选择**User Event**泳道，在时间轴上拖拽鼠标选定要查看的时间段。
2.  详情区列表给出录制时间段内用户事件详情，包括用户事件ID、事件开始时间Input Time、应用开始处理时间Processing Start、应用处理耗时Duration和事件类型User Event Type。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/94/v3/mNbOemhLS5KN2zc2Ro7haQ/zh-cn_image_0000002594634450.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=DDE914F071176F24D2BA5BF0898F117D36A933CBA5FAF70C3BC112FE62148124 "点击放大")
    
3.  点选User Event泳道中的条块，**Slice Detail**区域展示该事件的详情信息。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/8c/v3/EcaDD-6bTxytKbhyaSSFgQ/zh-cn_image_0000002594634470.png?HW-CC-KV=V1&HW-CC-Date=20260612T073912Z&HW-CC-Expire=86400&HW-CC-Sign=742EFF4D5521FAD2010E370A1575370417D38F82762AA300A432F4643E74391E "点击放大")
    

更多性能调优最佳实践，请参考[点击响应时延分析](https://developer.huawei.com/consumer/cn/doc/best-practices/bpta-click-to-click-response-optimization)、[点击完成时延分析](https://developer.huawei.com/consumer/cn/doc/best-practices/bpta-click-to-complete-delay-analysis)、[帧率问题分析](https://developer.huawei.com/consumer/cn/doc/best-practices/bpta-zhenlv)、[Web点击响应时延分析](https://developer.huawei.com/consumer/cn/doc/best-practices/bpta-web-click-response-delay-analysis)、[Web加载完成时延分析](https://developer.huawei.com/consumer/cn/doc/best-practices/bpta-web-completion-delay-analysis)。