• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# ArkUI_AccessibilityProviderCallbacksWithInstance
2<!--Kit: ArkUI-->
3<!--Subsystem: ArkUI-->
4<!--Owner: @zhanghangkai10241-->
5<!--Designer: @lmleon-->
6<!--Tester: @fredyuan0912-->
7<!--Adviser: @HelloCrease-->
8
9## 概述
10
11适配多实例场景第三方操作provider回调函数结构定义,需要第三方平台实现的相关函数,通过OH_ArkUI_AccessibilityProviderRegisterCallbackWithInstance注册到系统侧。
12
13**起始版本:** 15
14
15**相关模块:** [ArkUI_Accessibility](capi-arkui-accessibility.md)
16
17**所在头文件:** [native_interface_accessibility.h](capi-native-interface-accessibility-h.md)
18
19## 汇总
20
21### 成员函数
22
23| 名称 | 描述 |
24| -- | -- |
25| [int32_t (\*findAccessibilityNodeInfosById)(const char* instanceId, int64_t elementId,ArkUI_AccessibilitySearchMode mode, int32_t requestId, ArkUI_AccessibilityElementInfoList* elementList)](#findaccessibilitynodeinfosbyid) | 由接入方平台实现的回调函数,注册给系统侧调用。基于指定的节点,查询所需的节点信息。支持多实例场景。 |
26| [int32_t (\*findAccessibilityNodeInfosByText)(const char* instanceId, int64_t elementId, const char* text,int32_t requestId, ArkUI_AccessibilityElementInfoList* elementList)](#findaccessibilitynodeinfosbytext) | 由接入方平台实现的回调函数,注册给系统侧调用。基于指定的节点,查询满足指定组件文本内容的节点信息。支持多实例场景。 |
27| [int32_t (\*findFocusedAccessibilityNode)(const char* instanceId, int64_t elementId,ArkUI_AccessibilityFocusType focusType, int32_t requestId, ArkUI_AccessibilityElementInfo* elementInfo)](#findfocusedaccessibilitynode) | 由接入方平台实现的回调函数,注册给系统侧调用。从指定节点查找已经聚焦的节点。支持多实例场景。 |
28| [int32_t (\*findNextFocusAccessibilityNode)(const char* instanceId, int64_t elementId, ArkUI_AccessibilityFocusMoveDirection direction,int32_t requestId, ArkUI_AccessibilityElementInfo* elementInfo)](#findnextfocusaccessibilitynode) | 由接入方平台实现的回调函数,注册给系统侧调用。从指定节点查询指定方向的节点。支持多实例场景。 |
29| [int32_t (\*executeAccessibilityAction)(const char* instanceId, int64_t elementId,ArkUI_Accessibility_ActionType action, ArkUI_AccessibilityActionArguments *actionArguments, int32_t requestId)](#executeaccessibilityaction) | 由接入方平台实现的回调函数,注册给系统侧调用。对指定节点执行指定的操作。支持多实例场景。 |
30| [int32_t (\*clearFocusedFocusAccessibilityNode)(const char* instanceId)](#clearfocusedfocusaccessibilitynode) | 由接入方平台实现的回调函数,注册给系统侧调用。 清除当前获焦的节点。支持多实例场景。 |
31| [int32_t (\*getAccessibilityNodeCursorPosition)(const char* instanceId, int64_t elementId,int32_t requestId, int32_t* index)](#getaccessibilitynodecursorposition) | 由接入方平台实现的回调函数,注册给系统侧调用。获取当前组件中(文本组件)光标位置。支持多实例场景。 |
32
33## 成员函数说明
34
35### findAccessibilityNodeInfosById()
36
37```
38int32_t (*findAccessibilityNodeInfosById)(const char* instanceId, int64_t elementId,ArkUI_AccessibilitySearchMode mode, int32_t requestId, ArkUI_AccessibilityElementInfoList* elementList)
39```
40
41**描述:**
42
43由接入方平台实现的回调函数,注册给系统侧调用。基于指定的节点,查询所需的节点信息。支持多实例场景。
44
45**起始版本:** 15
46
47**参数:**
48
49| 参数项                                                                            | 描述 |
50|--------------------------------------------------------------------------------| -- |
51| const char* instanceId                                                         | 第三方框架的实例编码。 |
52| int64_t elementId                                                              | 无障碍元素的唯一编号。 |
53| [ArkUI_AccessibilitySearchMode](capi-native-interface-accessibility-h.md) mode | 无障碍服务的搜索模式。 |
54| int32_t requestId                                                              | 请求id,用于关联请求过程,方便问题定位。建议日志打印时附带输出该信息,方便定位。 |
55| [ArkUI_AccessibilityElementInfoList](capi-arkui-accessibility-arkui-accessibilityelementinfolist.md)* elementList                            | 本次查询到的所有无障碍元素列表。 |
56
57**返回:**
58
59| 类型 | 说明 |
60| -- | -- |
61| int32_t | 成功返回[ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL](capi-native-interface-accessibility-h.md#arkui_acessbilityerrorcode)。<br>            参数错误返回[ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER](capi-native-interface-accessibility-h.md#arkui_acessbilityerrorcode)。 |
62
63### findAccessibilityNodeInfosByText()
64
65```
66int32_t (*findAccessibilityNodeInfosByText)(const char* instanceId, int64_t elementId, const char* text,int32_t requestId, ArkUI_AccessibilityElementInfoList* elementList)
67```
68
69**描述:**
70
71由接入方平台实现的回调函数,注册给系统侧调用。基于指定的节点,查询满足指定组件文本内容的节点信息。支持多实例场景。
72
73**起始版本:** 15
74
75**参数:**
76
77| 参数项 | 描述 |
78| -- | -- |
79| const char* instanceId | 第三方框架的实例编码。 |
80|  int64_t elementId | 无障碍元素的唯一编号。 |
81|  const char* text | 组件需要匹配的文本内容。 |
82| int32_t requestId | 请求id,用于关联请求过程,方便问题定位。建议日志打印时附带输出该信息,方便定位。 |
83|  [ArkUI_AccessibilityElementInfoList](capi-arkui-accessibility-arkui-accessibilityelementinfolist.md)* elementList | 本次查询到的所有无障碍元素列表。 |
84
85**返回:**
86
87| 类型 | 说明 |
88| -- | -- |
89| int32_t | 成功返回[ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL](capi-native-interface-accessibility-h.md#arkui_acessbilityerrorcode)。<br>            参数错误返回[ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER](capi-native-interface-accessibility-h.md#arkui_acessbilityerrorcode)。 |
90
91### findFocusedAccessibilityNode()
92
93```
94int32_t (*findFocusedAccessibilityNode)(const char* instanceId, int64_t elementId,ArkUI_AccessibilityFocusType focusType, int32_t requestId, ArkUI_AccessibilityElementInfo* elementInfo)
95```
96
97**描述:**
98
99由接入方平台实现的回调函数,注册给系统侧调用。从指定节点查找已经聚焦的节点。支持多实例场景。
100
101**起始版本:** 15
102
103**参数:**
104
105| 参数项                                                                                | 描述 |
106|------------------------------------------------------------------------------------| -- |
107| const char* instanceId                                                             | 第三方框架的实例编码。 |
108| int64_t elementId                                                                  | 无障碍元素的唯一编号。 |
109| [ArkUI_AccessibilityFocusType](capi-native-interface-accessibility-h.md#arkui_accessibilityfocustype) focusType | 焦点类型。 |
110| int32_t requestId                                                                  | 请求id,用于关联请求过程,方便问题定位。建议日志打印时附带输出该信息,方便定位。 |
111| [ArkUI_AccessibilityElementInfo](capi-arkui-accessibility-arkui-accessibilityelementinfo.md)* elementInfo                                    | 本次查询到的无障碍元素。 |
112
113**返回:**
114
115| 类型 | 说明 |
116| -- | -- |
117| int32_t | 成功返回[ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL](capi-native-interface-accessibility-h.md#arkui_acessbilityerrorcode)。<br>            参数错误返回[ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER](capi-native-interface-accessibility-h.md#arkui_acessbilityerrorcode)。 |
118
119### findNextFocusAccessibilityNode()
120
121```
122int32_t (*findNextFocusAccessibilityNode)(const char* instanceId, int64_t elementId, ArkUI_AccessibilityFocusMoveDirection direction,int32_t requestId, ArkUI_AccessibilityElementInfo* elementInfo)
123```
124
125**描述:**
126
127由接入方平台实现的回调函数,注册给系统侧调用。从指定节点查询指定方向的节点。支持多实例场景。
128
129**起始版本:** 15
130
131**参数:**
132
133| 参数项                                                                                                                               | 描述 |
134|-----------------------------------------------------------------------------------------------------------------------------------| -- |
135| const char* instanceId                                                                                                            | 第三方框架的实例编码。 |
136| int64_t elementId                                                                                                                 | 无障碍元素的唯一编号。 |
137| [ArkUI_AccessibilityFocusMoveDirection](capi-native-interface-accessibility-h.md#arkui_accessibilityfocusmovedirection) direction | 搜索方向。 |
138| int32_t requestId                                                                                                                 | 请求id,用于关联请求过程,方便问题定位。建议日志打印时附带输出该信息,方便定位。 |
139| [ArkUI_AccessibilityElementInfo](capi-arkui-accessibility-arkui-accessibilityelementinfo.md)* elementInfo                         | 本次查询到的无障碍元素。 |
140
141**返回:**
142
143| 类型 | 说明 |
144| -- | -- |
145| int32_t | 成功返回[ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL](capi-native-interface-accessibility-h.md#arkui_acessbilityerrorcode)。<br>参数错误返回[ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER](capi-native-interface-accessibility-h.md#arkui_acessbilityerrorcode)。 |
146
147### executeAccessibilityAction()
148
149```
150int32_t (*executeAccessibilityAction)(const char* instanceId, int64_t elementId,ArkUI_Accessibility_ActionType action, ArkUI_AccessibilityActionArguments *actionArguments, int32_t requestId)
151```
152
153**描述:**
154
155由接入方平台实现的回调函数,注册给系统侧调用。对指定节点执行指定的操作。支持多实例场景。
156
157**起始版本:** 15
158
159**参数:**
160
161| 参数项                                                                                                              | 描述 |
162|------------------------------------------------------------------------------------------------------------------| -- |
163| const char* instanceId                                                                                           | 第三方框架的实例编码。 |
164| int64_t elementId                                                                                                | 无障碍元素的唯一编号。 |
165| [ArkUI_Accessibility_ActionType](capi-native-interface-accessibility-h.md#arkui_accessibility_actiontype) action | 需要执行的操作,比如聚焦、点击和长按等。 |
166| [ArkUI_AccessibilityActionArguments](capi-arkui-accessibility-arkui-accessibilityactionarguments.md) *actionArguments                                                          | 控制操作的参数。 |
167| int32_t requestId                                                                                                | 请求id,用于关联请求过程,方便问题定位。建议日志打印时附带输出该信息,方便定位。 |
168
169**返回:**
170
171| 类型 | 说明 |
172| -- | -- |
173| int32_t | 成功返回[ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL](capi-native-interface-accessibility-h.md#arkui_acessbilityerrorcode)。<br>参数错误返回[ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER](capi-native-interface-accessibility-h.md#arkui_acessbilityerrorcode)。 |
174
175### clearFocusedFocusAccessibilityNode()
176
177```
178int32_t (*clearFocusedFocusAccessibilityNode)(const char* instanceId)
179```
180
181**描述:**
182
183由接入方平台实现的回调函数,注册给系统侧调用。 清除当前获焦的节点。支持多实例场景。
184
185**起始版本:** 15
186
187**参数:**
188
189| 参数项 | 描述 |
190| -- | -- |
191| const char* instanceId | 第三方框架的实例编码。 |
192
193**返回:**
194
195| 类型 | 说明 |
196| -- | -- |
197| int32_t | 成功返回[ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL](capi-native-interface-accessibility-h.md#arkui_acessbilityerrorcode)。<br>参数错误返回[ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER](capi-native-interface-accessibility-h.md#arkui_acessbilityerrorcode)。 |
198
199### getAccessibilityNodeCursorPosition()
200
201```
202int32_t (*getAccessibilityNodeCursorPosition)(const char* instanceId, int64_t elementId,int32_t requestId, int32_t* index)
203```
204
205**描述:**
206
207由接入方平台实现的回调函数,注册给系统侧调用。获取当前组件中(文本组件)光标位置。支持多实例场景。
208
209**起始版本:** 15
210
211**参数:**
212
213| 参数项 | 描述 |
214| -- | -- |
215| const char* instanceId | 第三方框架的实例编码。 |
216|  int64_t elementId | 无障碍元素的唯一编号。 |
217| int32_t requestId | 请求id,用于关联请求过程,方便问题定位。建议日志打印时附带输出该信息,方便定位。 |
218|  int32_t* index | 光标的位置结果。 |
219
220**返回:**
221
222| 类型 | 说明 |
223| -- | -- |
224| int32_t | 成功返回[ARKUI_ACCESSIBILITY_NATIVE_RESULT_SUCCESSFUL](capi-native-interface-accessibility-h.md#arkui_acessbilityerrorcode)。<br>参数错误返回[ARKUI_ACCESSIBILITY_NATIVE_RESULT_BAD_PARAMETER](capi-native-interface-accessibility-h.md#arkui_acessbilityerrorcode)。 |
225
226
227