应用事件
状态: 开发中
本文档定义了与客户端应用程序(例如 Web 应用或移动应用)相关的事件。
点击事件
事件: app.screen.click
状态:
事件名称必须是 app.screen.click。
此事件表示应用程序屏幕上的瞬时点击。
app.screen.click 事件可用于指示用户已点击或轻触了应用程序的屏幕部分。应用程序活动区域之外的点击不应生成此事件。此事件不区分触摸/鼠标按下和触摸/鼠标抬起。实现应优先在点击完成时生成此事件,通常在触摸释放或鼠标抬起时。点击事件的位置必须以绝对屏幕像素提供。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
app.screen.coordinate.x | 必需 | int | 屏幕坐标的 x(水平)坐标,以屏幕像素为单位。 | 0; 131 | |
app.screen.coordinate.y | 必需 | int | 屏幕坐标的 y(垂直)分量,以屏幕像素为单位。 | 12; 99 | |
app.screen.id | 推荐 | 字符串 | 一个标识符,可唯一区分同一应用程序中的此屏幕与其他屏幕。[1] | f9bc787d-ff05-48ad-90e1-fca1d46130b3; com.example.app.MainActivity; com.example.shop.ProductDetailFragment; MyApp.ProfileView; MyApp.ProfileViewController | |
app.screen.name | 选择加入 | 字符串 | 应用程序屏幕的名称。[2] | MainActivity; ProductDetailFragment; ProfileView; ProfileViewController |
[1] app.screen.id: 屏幕仅代表应用程序绘制的设备显示的一部分。它通常包含多个控件或 UI 组件,范围比单个控件大。多个屏幕可以同时存在于同一显示器上(例如,平板电脑上的分屏视图)。
[2] app.screen.name: 屏幕仅代表应用程序绘制的设备显示的一部分。它通常包含多个控件或 UI 组件,范围比单个控件大。多个屏幕可以同时存在于同一显示器上(例如,平板电脑上的分屏视图)。
事件: app.widget.click
状态:
事件名称必须是 app.widget.click。
此事件表示应用程序控件已被点击。
使用此事件来指示用户已通过手动交互点击了视觉应用程序组件。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
app.widget.id | 必需 | 字符串 | 一个标识符,可唯一区分同一应用程序中的此控件与其他控件。[1] | f9bc787d-ff05-48ad-90e1-fca1d46130b3; submit_order_1829 | |
app.screen.id | 推荐 | 字符串 | 一个标识符,可唯一区分同一应用程序中的此屏幕与其他屏幕。[2] | f9bc787d-ff05-48ad-90e1-fca1d46130b3; com.example.app.MainActivity; com.example.shop.ProductDetailFragment; MyApp.ProfileView; MyApp.ProfileViewController | |
app.screen.coordinate.x | 选择加入 | int | 屏幕坐标的 x(水平)坐标,以屏幕像素为单位。 | 0; 131 | |
app.screen.coordinate.y | 选择加入 | int | 屏幕坐标的 y(垂直)分量,以屏幕像素为单位。 | 12; 99 | |
app.screen.name | 选择加入 | 字符串 | 应用程序屏幕的名称。[3] | MainActivity; ProductDetailFragment; ProfileView; ProfileViewController | |
app.widget.name | 选择加入 | 字符串 | 应用程序控件的名称。[4] | submit; attack; Clear Cart |
[1] app.widget.id: 控件是应用程序组件,通常是屏幕上的视觉 GUI 元素。
[2] app.screen.id: 屏幕仅代表应用程序绘制的设备显示的一部分。它通常包含多个控件或 UI 组件,范围比单个控件大。多个屏幕可以同时存在于同一显示器上(例如,平板电脑上的分屏视图)。
[3] app.screen.name: 屏幕仅代表应用程序绘制的设备显示的一部分。它通常包含多个控件或 UI 组件,范围比单个控件大。多个屏幕可以同时存在于同一显示器上(例如,平板电脑上的分屏视图)。
[4] app.widget.name: 控件是应用程序组件,通常是屏幕上的视觉 GUI 元素。
卡顿事件
事件: app.jank
卡顿是 UI 渲染的中断,导致显示可能感觉迟缓,甚至无响应/冻结。能够检测卡顿的应用程序可以使用以下事件进行报告。
状态:
事件名称必须是 app.jank。
此事件表示应用程序检测到次优的 UI 渲染性能。
当 UI 渲染速度足够慢,以至于用户体验到某种中断或迟缓时,就会发生卡顿。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
app.jank.frame_count | 推荐 | int | 出现卡顿的帧渲染数量。[1] | 9; 42 | |
app.jank.period | 推荐 | double | 报告此卡顿的时间周期,以秒为单位。 | 1.0; 5.0; 10.24 | |
app.jank.threshold | 推荐 | double | 此卡顿的最低渲染阈值,以秒为单位。 | 0.016; 0.7; 1.024 |
[1] app.jank.frame_count: 取决于平台限制,提供的值可能是近似值。
Attributes
有关可能出现在遥测项上的所有应用程序相关属性,请参阅 应用程序属性 注册表。