diff --git a/zh-cn/application-dev/reference/apis/js-apis-accessibility-GesturePath.md b/zh-cn/application-dev/reference/apis/js-apis-accessibility-GesturePath.md new file mode 100644 index 0000000000000000000000000000000000000000..738f1d435cc9b122042735559b2232af370c21ab --- /dev/null +++ b/zh-cn/application-dev/reference/apis/js-apis-accessibility-GesturePath.md @@ -0,0 +1,49 @@ +# 手势路径 + +GesturePath表示手势路径信息。 + +本模块用于创建辅助功能注入手势所需的手势路径信息。 + +>![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** +> +>本模块首批接口从API version 9开始支持,后续版本的新增接口,采用上角标单独标记接口的起始版本。 + +## 导入模块 + +```ts +import GesturePath from "@ohos.accessibility.GesturePath"; +``` + +## GesturePath + +表示手势路径信息。 + +**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core + +### 属性 + +| 名称 | 参数类型 | 可读 | 可写 | 说明 | +| ------------ | ---------------------------------------- | ---- | ---- | ------ | +| points | Array<[GesturePoint](js-apis-accessibility-GesturePoint.md#gesturepoint)> | 是 | 是 | 手势触摸点。 | +| durationTime | number | 是 | 是 | 手势总耗时, 单位为毫秒。 | + +### constructor + +constructor(durationTime: number); + +构造函数。 + +**系统能力**:SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| durationTime | number | 是 | 手势总耗时,单位为毫秒。 | + +**示例:** + +```typescript +let durationTime = 20; +let gesturePath = new GesturePath(durationTime); +``` diff --git a/zh-cn/application-dev/reference/apis/js-apis-accessibility-GesturePoint.md b/zh-cn/application-dev/reference/apis/js-apis-accessibility-GesturePoint.md new file mode 100644 index 0000000000000000000000000000000000000000..b5a2cd1a6c1315b6d20e1cafbde2440f14880849 --- /dev/null +++ b/zh-cn/application-dev/reference/apis/js-apis-accessibility-GesturePoint.md @@ -0,0 +1,51 @@ +# 手势触摸点 + +GesturePoint表示手势触摸点。 + +本模块用于创建辅助功能注入手势所需的手势路径的触摸点信息。 + +>![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** +> +>本模块首批接口从API version 9开始支持,后续版本的新增接口,采用上角标单独标记接口的起始版本。 + +## 导入模块 + +```ts +import GesturePoint from "@ohos.accessibility.GesturePoint"; +``` + +## GesturePoint + +表示手势触摸点。 + +**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core + +### 属性 + +| 名称 | 参数类型 | 可读 | 可写 | 说明 | +| --------- | ------ | ---- | ---- | ------- | +| positionX | number | 是 | 是 | 触摸点X坐标。 | +| positionY | number | 是 | 是 | 触摸点Y坐标。 | + +### constructor + +constructor(positionX: number, positionY: number); + +构造函数。 + +**系统能力**:SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| positionX | number | 是 | 触摸点X坐标。 | +| positionY | number | 是 | 触摸点Y坐标。 | + +**示例:** + +```typescript +let positionX = 1; +let positionY = 2; +let gesturePoint = new GesturePoint(positionX, positionY); +``` diff --git a/zh-cn/application-dev/reference/apis/js-apis-accessibility-extension-context.md b/zh-cn/application-dev/reference/apis/js-apis-accessibility-extension-context.md index a8fbb343f2b44e1e20e6be71a3005c773861774a..b82d3dfc5a8937c8c5af571e5c8088dc89415b2f 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-accessibility-extension-context.md +++ b/zh-cn/application-dev/reference/apis/js-apis-accessibility-extension-context.md @@ -1,8 +1,8 @@ -# AccessibilityExtensionContext +# 辅助功能扩展上下文 AccessibilityExtensionContext是AccessibilityExtensionAbility上下文环境,继承自ExtensionContext。 -AccessibilityExtensionContext模块提供扩展的上下文的能力,包括允许配置辅助应用关注信息类型、查询节点信息、手势注入等。 +辅助功能扩展上下文模块提供辅助功能扩展的上下文环境的能力,包括允许配置辅助应用关注信息类型、查询节点信息、手势注入等。 > **说明:** > @@ -17,7 +17,7 @@ AccessibilityExtensionContext模块提供扩展的上下文的能力,包括允 import AccessibilityExtensionAbility from '@ohos.application.AccessibilityExtensionAbility' class MainAbility extends AccessibilityExtensionAbility { onConnect(): void { - console.log("AxExtensionAbility onConnect"); + console.log('AxExtensionAbility onConnect'); let axContext = this.context; } } @@ -77,7 +77,7 @@ class MainAbility extends AccessibilityExtensionAbility { setTargetBundleName(targetNames: Array\): Promise\; -设置关注的事件类型。 +设置关注的目标包名,使用Promise异步回调。 **系统能力:** SystemCapability.BarrierFree.Accessibility.Core @@ -91,19 +91,52 @@ setTargetBundleName(targetNames: Array\): Promise\; | 类型 | 说明 | | ---------------------- | --------------------- | -| Promise<boolean> | Promise对象。返回当前设置是否成功。 | +| Promise<void> | 无返回结果的Promise对象。 | **示例:** ```ts -this.context.setTargetBundleName(['com.ohos.mms']); +let targetNames = ['com.ohos.xyz']; +this.context.setTargetBundleName().then(() => { + console.info('set target bundle names success'); +}).catch((err) => { + console.error('failed to set target bundle names because ' + JSON.stringify(err)); +}); +``` + +## AccessibilityExtensionContext.setTargetBundleName + +setTargetBundleName(targetNames: Array\, callback: AsyncCallback\): void; + +设置关注的目标包名,使用callback异步回调。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| ----------- | ------------------- | ---- | -------- | +| targetNames | Array<string> | 是 | 关注的目标包名。 | +| callback | AsyncCallback<void> | 是 | 回调函数,如果设置关注的目标包名失败,则AsyncCallback中err有数据返回。 | + +**示例:** + +```ts +let targetNames = ['com.ohos.xyz']; +this.context.setTargetBundleName().then((err, data) => { + if (err) { + console.error('failed to set target bundle names because ' + JSON.stringify(err)); + return; + } + console.info('set target bundle names success'); +}); ``` ## AccessibilityExtensionContext.getFocusElement getFocusElement(isAccessibilityFocus?: boolean): Promise\; -获取焦点元素。 +获取焦点元素, 使用Promise异步回调。 **系统能力:** SystemCapability.BarrierFree.Accessibility.Core @@ -117,77 +150,296 @@ getFocusElement(isAccessibilityFocus?: boolean): Promise\; | 类型 | 说明 | | ----------------------------------- | ---------------------- | -| Promise<AccessibilityElement> | Promise对象。返回当前对应的焦点元素。 | +| Promise<AccessibilityElement> | Promise对象,返回当前对应的焦点元素。 | **示例:** ```ts -this.context.getFocusElement().then(focusElement => { - console.log("AxExtensionAbility getFocusElement success"); -}) +let focusElement; +this.context.getFocusElement().then((data) => { + focusElement = data; + console.log('get focus element success'); +}).catch((err) => { + console.error('failed to get focus element because ' + JSON.stringify(err)); +}); ``` +## AccessibilityExtensionContext.getFocusElement + +getFocusElement(callback: AsyncCallback\): void; + +获取焦点元素, 使用callback异步回调。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| callback | AsyncCallback<AccessibilityElement> | 是 | 回调函数,返回当前对应的焦点元素。 | + +**示例:** + +```ts +let focusElement; +this.context.getFocusElement().then((err, data) => { + if (err) { + console.error('failed to get focus element because ' + JSON.stringify(err)); + return; + } + focusElement = data; + console.info('get focus element success'); +}); +``` + +## AccessibilityExtensionContext.getFocusElement + +getFocusElement(isAccessibilityFocus: boolean, callback: AsyncCallback\): void; + +获取焦点元素, 使用callback异步回调。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| -------------------- | ------- | ---- | ------------------- | +| isAccessibilityFocus | boolean | 是 | 获取的是否是无障碍焦点元素。 | +| callback | AsyncCallback<AccessibilityElement> | 是 | 回调函数,返回当前对应的焦点元素。 | + +**示例:** + +```ts +let isAccessibilityFocus = true; +this.context.getFocusElement(isAccessibilityFocus).then((err, data) => { + if (err) { + console.error('failed to get focus element because ' + JSON.stringify(err)); + return; + } + focusElement = data; + console.info('get focus element success'); +}); +``` ## AccessibilityExtensionContext.getWindowRootElement getWindowRootElement(windowId?: number): Promise\; -获取窗口的根节点元素。 +获取指定窗口的根节点元素, 使用Promise异步回调。 **系统能力:** SystemCapability.BarrierFree.Accessibility.Core **参数:** -| 参数名 | 参数类型 | 必填 | 说明 | -| -------- | ------ | ---- | --------------------------- | -| windowId | number | 否 | 指定获取根节点元素的窗口,未指定则从当前活跃窗口获取。 | +| 参数名 | 参数类型 | 必填 | 说明 | +| -------------------- | ------- | ---- | ------------------- | +| windowId | number | 否 | 指定窗口的编号,未指定则从当前活跃窗口获取。 | **返回值:** -| 类型 | 说明 | -| ----------------------------------- | ----------------------- | -| Promise<AccessibilityElement> | Promise对象。返回当前对应的根节点元素。 | +| 类型 | 说明 | +| ----------------------------------- | ---------------------- | +| Promise<AccessibilityElement> | Promise对象,返回指定屏幕的所有窗口。 | + +**示例:** + +```ts +let rootElement; +this.context.getWindowRootElement().then((data) => { + rootElement = data; + console.log('get root element of the window success'); +}).catch((err) => { + console.error('failed to get root element of the window because ' + JSON.stringify(err)); +}); +``` + +## AccessibilityExtensionContext.getWindowRootElement + +getWindowRootElement(callback: AsyncCallback\): void; + +获取指定窗口的根节点元素, 使用callback异步回调。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| callback | AsyncCallback<AccessibilityElement> | 是 | 回调函数,返回指定窗口的根节点元素。 | + +**示例:** + +```ts +let rootElement; +this.context.getWindowRootElement().then((err, data) => { + if (err) { + console.error('failed to get root element of the window because ' + JSON.stringify(err)); + return; + } + rootElement = data; + console.info('get root element of the window success'); +}); +``` + +## AccessibilityExtensionContext.getWindowRootElement + +getWindowRootElement(windowId: number, callback: AsyncCallback\): void; + +获取指定屏幕中的所有窗口, 使用callback异步回调。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| -------------------- | ------- | ---- | ------------------- | +| windowId | number | 是 | 指定窗口的编号,未指定则从当前活跃窗口获取。 | +| callback | AsyncCallback<AccessibilityElement> | 是 | 回调函数,返回指定窗口的根节点元素。 | **示例:** ```ts -this.context.getWindowRootElement().then(rootElement => { - console.log("AxExtensionAbility getWindowRootElement success"); -}) +let displayId = 10; +let rootElement; +this.context.getWindowRootElement(displayId).then((err, data) => { + if (err) { + console.error('failed to get root element of the window because ' + JSON.stringify(err)); + return; + } + rootElement = data; + console.info('get root element of the window success'); +}); ``` ## AccessibilityExtensionContext.getWindows -getWindows(displayId?: number): Promise>; +getWindows(displayId?: number): Promise\>; -获取用户可见的窗口列表。 +获取指定屏幕中的所有窗口, 使用Promise异步回调。 **系统能力:** SystemCapability.BarrierFree.Accessibility.Core **参数:** -| 参数名 | 参数类型 | 必填 | 说明 | -| --------- | ------ | ---- | ------------------------- | -| displayId | number | 否 | 指定获取窗口信息的屏幕,未指定则从默认主屏幕获取。 | +| 参数名 | 参数类型 | 必填 | 说明 | +| -------------------- | ------- | ---- | ------------------- | +| displayId | number | 否 | 指定的屏幕编号,未指定则从默认主屏幕获取。 | **返回值:** -| 类型 | 说明 | -| ---------------------------------------- | ------------------------ | -| Promise<Array<AccessibilityElement>> | Promise对象。返回当前对应的窗口列表信息。 | +| 类型 | 说明 | +| ----------------------------------- | ---------------------- | +| Promise<Array<AccessibilityElement>> | Promise对象,返回指定屏幕的所有窗口。 | **示例:** ```ts -this.context.getWindows().then(windows => { - console.log("AxExtensionAbility getWindows success"); -}) +let windows; +this.context.getWindows().then((data) => { + windows = data; + console.log('get windows success'); +}).catch((err) => { + console.error('failed to get windows because ' + JSON.stringify(err)); +}); +``` + +## AccessibilityExtensionContext.getWindows + +getWindows(callback: AsyncCallback\>): void; + +获取指定屏幕中的所有窗口, 使用callback异步回调。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| callback | AsyncCallback<Array<AccessibilityElement>> | 是 | 回调函数,返回指定屏幕的所有窗口。 | + +**示例:** + +```ts +let windows; +this.context.getWindows().then((err, data) => { + if (err) { + console.error('failed to get windows because ' + JSON.stringify(err)); + return; + } + windows = data; + console.info('get windows success'); +}); +``` + +## AccessibilityExtensionContext.getWindows + +getWindows(displayId: number, callback: AsyncCallback\>): void; + +获取指定屏幕中的所有窗口, 使用callback异步回调。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| -------------------- | ------- | ---- | ------------------- | +| displayId | number | 是 | 指定的屏幕编号,未指定则从默认主屏幕获取。 | +| callback | AsyncCallback<Array<AccessibilityElement>> | 是 | 回调函数,返回指定屏幕的所有窗口。 | + +**示例:** + +```ts +let displayId = 10; +let windows; +this.context.getWindows(displayId).then((err, data) => { + if (err) { + console.error('failed to get windows because ' + JSON.stringify(err)); + return; + } + windows = data; + console.info('get windows success'); +}); ``` ## AccessibilityExtensionContext.injectGesture +injectGesture(gesturePath: GesturePath): Promise\; + +注入手势,使用Promise异步回调。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| ----------- | ---------------------------------------- | ---- | -------------- | +| gesturePath | [GesturePath](js-apis-accessibility-GesturePath.md#gesturepath) | 是 | 表示手势的路径信息。 | + +**返回值:** + +| 类型 | 说明 | +| ----------------------------------- | ---------------------- | +| Promise<void> | 无返回结果的Promise对象。 | + +**示例:** + +```ts +import { GesturePath } from "../@ohos.accessibility.GesturePath"; +let gesturePath = new GesturePath(100); +for (let i = 0; i < 10; i++) { + let gesturePoint = new GesturePosition(100, i * 200); + gesturePath.positions.push(gesturePoint); +} +this.context.gestureInject(gesturePath, () => { + console.info('inject gesture success'); +}).catch((err) => { + console.error('failed to inject gesture because ' + JSON.stringify(err)); +}); +``` +## AccessibilityExtensionContext.injectGesture + injectGesture(gesturePath: GesturePath, callback: AsyncCallback\): void -注入手势。 +注入手势,使用callback异步回调。 **系统能力:** SystemCapability.BarrierFree.Accessibility.Core @@ -195,8 +447,8 @@ injectGesture(gesturePath: GesturePath, callback: AsyncCallback\): void | 参数名 | 参数类型 | 必填 | 说明 | | ----------- | ---------------------------------------- | ---- | -------------- | -| gesturePath | [GesturePath](js-apis-application-AccessibilityExtensionAbility.md#GesturePath) | 是 | 表示手势的路径信息。 | -| callback | AsyncCallback<void> | 是 | 表示注入手势执行结果的回调。 | +| gesturePath | [GesturePath](js-apis-accessibility-GesturePath.md#gesturepath) | 是 | 表示手势的路径信息。 | +| callback | AsyncCallback<void> | 是 | 回调函数,表示注入手势执行结果的回调。 | **示例:** @@ -206,15 +458,25 @@ for (let i = 0; i < 10; i++) { let gesturePoint = new GesturePosition(100, i * 200); gesturePath.positions.push(gesturePoint); } -this.context.gestureInject(gesturePath, (result) => { - console.info('gestureInject result: ' + result); -}) +this.context.gestureInject(gesturePath, (err, data) => { + if (err) { + console.error('failed to inject gesture because ' + JSON.stringify(err)); + return; + } + console.info('inject gesture success'); +}); ``` -## AccessibilityElement.attributeNames +## AccessibilityElement9 + +无障碍节点元素。 + +**系统能力**:以下各项对应的系统能力均为SystemCapability.BarrierFree.Accessibility.Core + +## attributeNames attributeNames\(): Promise\>; -获取节点元素的所有属性名称。 +获取节点元素的所有属性名称,使用Promise异步回调。 **系统能力:** SystemCapability.BarrierFree.Accessibility.Core @@ -222,28 +484,61 @@ attributeNames\(): Promise\>; | 类型 | 说明 | | ---------------------------------------- | ------------------------ | -| Promise<Array<T>> | Promise对象。返回获取元素所有属性名称的调用结果。 | +| Promise<Array<T>> | Promise对象,返回节点元素的所有属性名称。 | **示例:** ```ts let accessibilityElement; +let attributeNames; try { - accessibilityElement.attributeNames().then((values) => { - console.log("get attribute names success"); + accessibilityElement.attributeNames().then((data) => { + console.log('get attribute names success'); + attributeNames = data; }).catch((err) => { - console.log("get attribute names err: " + JSON.stringify(err)); + console.log('get attribute names err: ' + JSON.stringify(err)); }); } catch (e) { - console.log("An unexpected error occurred. Error:" + e); + console.log('An unexpected error occurred. Error:' + e); } ``` +## attributeNames + +attributeNames\(callback: AsyncCallback\>): void; + +获取节点元素的所有属性名称,使用callback异步回调。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| ----------- | ---------------------------------------- | ---- | -------------- | +| callback | AsyncCallback<Array<T>> | 是 | 回调函数,返回节点元素的所有属性名称。 | + +**示例:** +```ts +let accessibilityElement; +let attributeNames; +try { + accessibilityElement.attributeNames().then((err, data) => { + if (err) { + console.error('failed to get attribute names because ' + JSON.stringify(err)); + return; + } + attributeNames = data; + console.info('get attribute names success'); + }); +} catch (e) { + console.log('An unexpected error occurred. Error:' + e); +} +``` ## AccessibilityElement.attributeValue attributeValue\(attributeName: T): Promise\; -根据属性名称获取属性值。 +根据属性名称获取属性值,使用Promise异步回调。 **系统能力:** SystemCapability.BarrierFree.Accessibility.Core @@ -257,29 +552,65 @@ attributeValue\(attributeName: T): Promi | 类型 | 说明 | | ---------------------------------------- | ------------------------ | -| Promise<Array<ElementAttributeValues[T]>> | Promise对象。返回根据属性名称获取属性值的调用结果。 | +| Promise<ElementAttributeValues[T]> | Promise对象,返回根据节点属性名称获取的属性值。 | **示例:** ```ts let accessibilityElement; +let attributeValue; try { let attributeName = 'name'; - accessibilityElement.attributeValue(attributeName).then((value) => { - console.log("get attribute value by name success"); + accessibilityElement.attributeValue(attributeName).then((data) => { + console.log('get attribute value by name success'); + attribtueValue = data; }).catch((err) => { - console.log("get attribute value by name err: " + JSON.stringify(err)); + console.log('get attribute value by name err: ' + JSON.stringify(err)); }); } catch (e) { - console.log("An unexpected error occurred. Error:" + e); + console.log('An unexpected error occurred. Error:' + e); } ``` +## AccessibilityElement.attributeValue + +attributeValue\(attributeName: T, + callback: AsyncCallback\): void; + +根据属性名称获取属性值,使用callback异步回调。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| ----------- | ---------------------------------------- | ---- | -------------- | +| attributeName | T | 是 | 表示属性的名称。 | +| callback | AsyncCallback<ElementAttributeValues[T]> | 是 | 回调函数,返回根据节点属性名称获取的属性值。 | + +**示例:** -## AccessibilityElement.actionNames +```ts +let accessibilityElement; +let attributeValue; +try { + let attributeName = 'name'; + accessibilityElement.attributeValue(attributeName).then((err, data) => { + if (err) { + console.error('failed to get attribute value because ' + JSON.stringify(err)); + return; + } + attributeValue = data; + console.info('get attribute value success'); + }); +} catch (e) { + console.log('An unexpected error occurred. Error:' + e); +} +``` +## actionNames actionNames(): Promise\>; -获取节点元素支持的所有操作名称。 +获取节点元素支持的所有操作名称,使用Promise异步回调。 **系统能力:** SystemCapability.BarrierFree.Accessibility.Core @@ -287,28 +618,61 @@ actionNames(): Promise\>; | 类型 | 说明 | | ---------------------------------------- | ------------------------ | -| Promise<Array<string>> | Promise对象。返回获取节点元素支持的所有操作名称的调用结果。 | +| Promise<Array<string>> | Promise对象,返回节点元素支持的所有操作名称。 | **示例:** ```ts let accessibilityElement; +let actionNames; try { - accessibilityElement.actionNames().then((values) => { - console.log("get action names success"); + accessibilityElement.actionNames().then((data) => { + console.log('get action names success'); + actionNames = data; }).catch((err) => { - console.log("get action names err: " + JSON.stringify(err)); + console.log('get action names err: ' + JSON.stringify(err)); }); } catch (e) { - console.log("An unexpected error occurred. Error:" + e); + console.log('An unexpected error occurred. Error:' + e); } ``` +## actionNames -## AccessibilityElement.performAction +actionNames(callback: AsyncCallback\>): void; + +获取节点元素支持的所有操作名称,使用callback异步回调。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| ----------- | ---------------------------------------- | ---- | -------------- | +| callback | AsyncCallback<Array<string>> | 是 | 回调函数,返回节点元素支持的所有操作名称。 | + +**示例:** + +```ts +let accessibilityElement; +let actionNames; +try { + accessibilityElement.actionNames().then((err, data) => { + if (err) { + console.error('failed to get action names because ' + JSON.stringify(err)); + return; + } + actionNames = data; + console.info('get action names success'); + }); +} catch (e) { + console.log('An unexpected error occurred. Error:' + e); +} +``` +## performAction performAction(actionName: string, parameters?: object): Promise\; -根据操作名称执行某个操作。 +根据操作名称执行某个操作,使用Promise异步回调。 **系统能力:** SystemCapability.BarrierFree.Accessibility.Core @@ -323,29 +687,139 @@ performAction(actionName: string, parameters?: object): Promise\; | 类型 | 说明 | | ---------------------------------------- | ------------------------ | -| Promise<Array<boolean>> | Promise对象。返回获取元素所有属性名的调用结果。 | +| Promise<boolean> | Promise对象,返回执行指定操作后的回调结果,true为执行成功,false为执行失败。 | **示例:** ```ts let accessibilityElement; +let performActionRes; try { - - accessibilityElement.performAction('action').then((result) => { - console.info('perform action result: ' + result); + accessibilityElement.performAction('action').then((data) => { + console.info('perform action success'); + performActionRes = data; }).catch((err) => { - console.log("perform action err: " + JSON.stringify(err)); + console.log('failed to perform action because ' + JSON.stringify(err)); }); } catch (e) { - console.log("An unexpected error occurred. Error:" + e); + console.log('An unexpected error occurred. Error:' + e); } ``` +## performAction + +performAction(actionName: string, callback: AsyncCallback\): void; + +根据操作名称执行某个操作,使用callback异步回调。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** -## AccessibilityElement.findElement +| 参数名 | 参数类型 | 必填 | 说明 | +| ----------- | ---------------------------------------- | ---- | -------------- | +| actionName | string | 是 | 表示属性的名称。 | +| callback | AsyncCallback<boolean> | 是 | 回调函数,返回执行指定操作后的回调结果,true为执行成功,false为执行失败。 | + +**示例:** + +```ts +let accessibilityElement; +let performActionRes; +try { + accessibilityElement.performAction('action').then((err, data) => { + if (err) { + console.error('failed to perform action because ' + JSON.stringify(err)); + return; + } + performActionRes = data; + console.info('perform action success'); + }); +} catch (e) { + console.log('An unexpected error occurred. Error:' + e); +} +``` +## performAction + +performAction(actionName: string, parameters: object, callback: AsyncCallback\): void; + +根据操作名称执行某个操作,使用callback异步回调。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| ----------- | ---------------------------------------- | ---- | -------------- | +| actionName | string | 是 | 表示属性的名称。 | +| parameters | object | 是 | 表示执行操作时所需要的参数。 | +| callback | AsyncCallback<boolean> | 是 | 回调函数,返回执行指定操作后的回调结果,true为执行成功,false为执行失败。 | + +**示例:** + +```ts +let accessibilityElement; +let actionName = 'action'; +let parameters = { + 'setText': 'test text' +}; +let performActionRes; +try { + accessibilityElement.performAction(actionName, parameters).then((err, data) => { + if (err) { + console.error('failed to perform action because ' + JSON.stringify(err)); + return; + } + performActionRes = data; + console.info('perform action success'); + }); +} catch (e) { + console.log('An unexpected error occurred. Error:' + e); +} +``` +## findElement('content') findElement(type: 'content', condition: string): Promise\>; -查询节点元素的指定内容。 +根据节点内容查询所有节点元素。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| ----------- | ---------------------------------------- | ---- | -------------- | +| type | string | 是 | 固定为'content', 表示查找的类型为节点元素内容。 | +| condition | string | 是 | 表示查找的条件。 | + +**返回值:** + +| 类型 | 说明 | +| ---------------------------------------- | ------------------------ | +| Promise<Array<AccessibilityElement>> | Promise对象,返回满足指定查询关键字的所有节点元素。 | + +**示例:** + +```ts +let accessibilityElement; +let type = 'content'; +let condition = 'keyword'; +let elements; +try { + accessibilityElement.findElement(type, condition).then((data) => { + elements = data; + console.log('find element success'); + }).catch((err) => { + console.log('failed to find element because ' + JSON.stringify(err)); + }); +} catch (e) { + console.log('An unexpected error occurred. Error:' + e); +} +``` +## findElement('content') + +findElement(type: 'content', condition: string, callback: AsyncCallback\>): void; + +根据节点内容查询所有节点元素。 **系统能力:** SystemCapability.BarrierFree.Accessibility.Core @@ -355,25 +829,175 @@ findElement(type: 'content', condition: string): Promise\ { + if (err) { + console.error('failed to find element because ' + JSON.stringify(err)); + return; + } + elements = data; + console.info('find element success'); + }); +} catch (e) { + console.log('An unexpected error occurred. Error:' + e); +} +``` +## findElement('focusType') + +findElement(type: 'focusType', condition: FocusType): Promise\; + +根据焦点元素类型查询节点元素。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| ----------- | ---------------------------------------- | ---- | -------------- | +| type | string | 是 | 固定为'focusType', 表示查询的类型为节点的焦点元素类型。 | +| condition | [FocusType](#focustype) | 是 | 表示查询焦点元素的类型。 | **返回值:** | 类型 | 说明 | | ---------------------------------------- | ------------------------ | -| Promise<Array<T>> | Promise对象。返回获取元素所有属性名的调用结果。 | +| Promise<AccessibilityElement> | Promise对象,返回满足指定查询焦点元素类型的节点元素。 | **示例:** ```ts let accessibilityElement; +let type = 'focusType'; +let condition = 'normal'; +let elements; try { - let condition = 'keyword'; - accessibilityElement.findElement('content', condition).then((values) => { - console.log("find element success"); + accessibilityElement.findElement(type, condition).then((data) => { + elements = data; + console.log('find element success'); }).catch((err) => { - console.log("find element err: " + JSON.stringify(err)); + console.log('failed to find element because ' + JSON.stringify(err)); + }); +} catch (e) { + console.log('An unexpected error occurred. Error:' + e); +} +``` +## findElement('focusType') + +findElement(type: 'focusType', condition: FocusType, callback: AsyncCallback\): void; + +根据焦点元素类型查询节点元素。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| ----------- | ---------------------------------------- | ---- | -------------- | +| type | string | 是 | 固定为'focusType', 表示查询的类型为节点的焦点元素类型。 | +| condition | [FocusType](#focustype) | 是 | 表示查询焦点元素的类型。 | +| callback | AsyncCallback<AccessibilityElement> | 是 | 回调函数,返回满足指定查询焦点元素类型的节点元素。 | + +**示例:** + +```ts +let accessibilityElement; +let type = 'focusType'; +let condition = 'normal'; +let elements; +try { + accessibilityElement.findElement(type, condition).then((err, data) => { + if (err) { + console.error('failed to find element because ' + JSON.stringify(err)); + return; + } + elements = data; + console.info('find element success'); + }); +} catch (e) { + console.log('An unexpected error occurred. Error:' + e); +} +``` +## findElement('focusDirection') + +findElement(type: 'focusDirection', condition: FocusDirection): Promise\; + +根据下一焦点元素方向查询节点元素。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| ----------- | ---------------------------------------- | ---- | -------------- | +| type | string | 是 | 固定为'focusDirection', 表示查询的类型为节点的下一焦点元素方向。 | +| condition | [FocusDirection](#focusdirection) | 是 | 表示查询下一焦点元素的方向。 | + +**返回值:** + +| 类型 | 说明 | +| ---------------------------------------- | ------------------------ | +| Promise<AccessibilityElement> | Promise对象,返回满足指定查询下一焦点元素方向的节点元素。 | + +**示例:** + +```ts +let accessibilityElement; +let type = 'focusDirection'; +let condition = 'up'; +let elements; +try { + accessibilityElement.findElement(type, condition).then((data) => { + elements = data; + console.log('find element success'); + }).catch((err) => { + console.log('failed to find element because ' + JSON.stringify(err)); + }); +} catch (e) { + console.log('An unexpected error occurred. Error:' + e); +} +``` +## findElement('focusDirection') + +findElement(type: 'focusDirection', condition: FocusDirection, callback: AsyncCallback\): void; + +根据下一焦点元素方向查询所有节点元素。 + +**系统能力:** SystemCapability.BarrierFree.Accessibility.Core + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| ----------- | ---------------------------------------- | ---- | -------------- | +| type | string | 是 | 固定为'focusDirection', 表示查询的类型为节点的下一焦点元素方向。 | +| condition | [FocusDirection](#focusdirection) | 是 | 表示下一查询焦点元素的方向。 | +| callback | AsyncCallback<AccessibilityElement> | 是 | 回调函数,返回满足指定查询下一焦点元素方向的节点元素。 | + +**示例:** + +```ts +let accessibilityElement; +let type = 'focusDirection'; +let condition = 'up'; +let elements; +try { + accessibilityElement.findElement(type, condition).then((err, data) => { + if (err) { + console.error('failed to find element because ' + JSON.stringify(err)); + return; + } + elements = data; + console.info('find element success'); }); } catch (e) { - console.log("An unexpected error occurred. Error:" + e); + console.log('An unexpected error occurred. Error:' + e); } ``` diff --git a/zh-cn/application-dev/reference/apis/js-apis-accessibility.md b/zh-cn/application-dev/reference/apis/js-apis-accessibility.md index de981f480adff501aedf34b43da4e74b905d01f9..77311ac0c1b9cc3f9c26db1b916ef21dc3d1f10f 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-accessibility.md +++ b/zh-cn/application-dev/reference/apis/js-apis-accessibility.md @@ -144,7 +144,7 @@ import accessibility from '@ohos.accessibility'; ## CaptionsManager8+ -字幕配置。 +字幕配置管理,在调用CaptionsManager的方法前,需要先通过 [accessibility.getCaptionsManager()](#accessibilitygetcaptionsmanager8)获取 captionsManager实例。 **系统能力**:以下各项对应的系统能力均为SystemCapability.BarrierFree.Accessibility.Hearing @@ -155,90 +155,92 @@ import accessibility from '@ohos.accessibility'; | enabled | boolean | 是 | 否 | 表示是否启用字幕配置。 | | style | [CaptionsStyle](#captionsstyle8) | 是 | 否 | 表示字幕风格。 | -下列 API 示例中都需要使用 [accessibility.getCaptionsManager()](#accessibilitygetcaptionsmanager8) 获取 captionsManager 实例,再通过此实例调用对应的方法。 - ### on('enableChange') on(type: 'enableChange', callback: Callback<boolean>): void; -注册字幕配置启用的监听函数。 +监听字幕配置启用状态变化事件。 -- **参数:** +**参数:** - | 参数名 | 参数类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | type | string | 是 | 监听字幕配置启用状态。 | - | callback | Callback<boolean> | 是 | 回调函数,在启用状态变化时将状态通过此函数进行通知。 | +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| type | string | 是 | 监听的事件名,固定为‘enableChange’,即字幕配置启用状态变化事件。 | +| callback | Callback<boolean> | 是 | 回调函数,在启用状态变化时将状态通过此函数进行通知。 | -- **示例:** +**示例:** ```typescript - let captionsManager = accessibility.getCaptionsManager(); + let captionsManager = accessibility.getCaptionsManager(); captionsManager.on('enableChange',(data) => { console.info('success data:subscribeStateObserver : ' + JSON.stringify(data)) - }) + }); ``` ### on('styleChange') on(type: 'styleChange', callback: Callback<CaptionsStyle>): void; -注册字幕风格变化的监听函数。 +监听字幕风格变化事件。 -- **参数:** +**参数:** - | 参数名 | 参数类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | type | string | 是 | 监听字幕风格变化。 | - | callback | Callback<[CaptionsStyle](#captionsstyle8)> | 是 | 回调函数,在字幕风格变化时通过此函数进行通知。 | +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| type | string | 是 | 监听的事件名,固定为‘styleChange’,即字幕风格变化事件。 | +| callback | Callback<[CaptionsStyle](#captionsstyle8)> | 是 | 回调函数,在字幕风格变化时通过此函数进行通知。 | -- **示例:** +**示例:** ```typescript - let captionsManager = accessibility.getCaptionsManager(); + let captionsManager = accessibility.getCaptionsManager(); captionsManager.on('styleChange',(data) => { console.info('success data:subscribeStateObserver : ' + JSON.stringify(data)) - }) + }); ``` ### off('enableChange') off(type: 'enableChange', callback?: Callback<boolean>): void; -移除字幕配置启用的监听函数。 +取消监听字幕配置启用状态变化事件。 -- **参数:** +**参数:** - | 参数名 | 参数类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | type | string | 是 | 监听字幕配置启用状态。 | - | callback | Callback<boolean> | 否 | 回调函数,在启用状态变化时将状态通过此函数进行通知。 | +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| type | string | 是 | 取消监听的事件名,固定为‘enableChange’,即字幕配置启用状态变化事件。 | +| callback | Callback<boolean> | 否 | 回调函数,在字幕配置启用状态变化时将状态通过此函数进行通知。 | -- **示例:** +**示例:** ```typescript - let captionsManager = accessibility.getCaptionsManager(); - captionsManager.off('enableChange') + let captionsManager = accessibility.getCaptionsManager(); + captionsManager.off('enableChange',(data) => { + console.info('success data:unSubscribeStateObserver : ' + JSON.stringify(data)) + }); ``` ### off('styleChange') off(type: 'styleChange', callback?: Callback<CaptionsStyle>): void; -移除字幕风格变化的监听函数。 +取消字幕风格变化监听事件。 -- **参数:** +**参数:** - | 参数名 | 参数类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | type | string | 是 | 字幕风格变化。 | - | callback | Callback<[CaptionsStyle](#captionsstyle8)> | 否 | 回调函数,在字幕风格变化时通过此函数进行通知。 | +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| type | string | 是 | 取消监听的事件名,固定为‘styleChange’,即字幕风格变化事件。 | +| callback | Callback<[CaptionsStyle](#captionsstyle8)> | 否 | 回调函数,在字幕风格变化时通过此函数进行通知。 | -- **示例:** +**示例:** ```typescript - let captionsManager = accessibility.getCaptionsManager(); - captionsManager.off('styleChange') + let captionsManager = accessibility.getCaptionsManager(); + captionsManager.off('styleChange',(data) => { + console.info('success data:unSubscribeStateObserver : ' + JSON.stringify(data)) + }); ``` ## EventInfo @@ -274,16 +276,20 @@ constructor(jsonObject) **系统能力**:SystemCapability.BarrierFree.Accessibility.Core -- **参数:** +**参数:** - | 参数名 | 参数类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | jsonObject | string | 是 | 创建对象所需要的 JSON 格式字符串。 | +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| jsonObject | string | 是 | 创建对象所需要的 JSON 格式字符串。 | -- **示例:** +**示例:** ```typescript - let eventInfo = new accessibility.EventInfo({"type":"click","bundleName":"com.example.MyApplication","triggerAction":"click"}) + let eventInfo = new accessibility.EventInfo({ + "type":"click", + "bundleName":"com.example.MyApplication", + "triggerAction":"click" + }); ``` ## EventType @@ -338,306 +344,348 @@ constructor(jsonObject) getAbilityLists(abilityType: AbilityType, stateType: AbilityState): Promise<Array<AccessibilityAbilityInfo>> -查询辅助应用列表。 +查询辅助应用列表,使用Promise异步回调。 **系统能力**:SystemCapability.BarrierFree.Accessibility.Core -- **参数:** +**参数:** - | 参数名 | 参数类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | abilityType | [AbilityType](#abilitytype) | 是 | 辅助应用的类型。 | - | stateType | [AbilityState](#abilitystate) | 是 | 辅助应用的状态。 | +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| abilityType | [AbilityType](#abilitytype) | 是 | 辅助应用的类型。 | +| stateType | [AbilityState](#abilitystate) | 是 | 辅助应用的状态。 | -- **返回值:** +**返回值:** - | 类型 | 说明 | - | -------- | -------- | - | Promise<Array<[AccessibilityAbilityInfo](#accessibilityabilityinfo)>> | 返回辅助应用信息列表。 | +| 类型 | 说明 | +| -------- | -------- | +| Promise<Array<[AccessibilityAbilityInfo](#accessibilityabilityinfo)>> | Promise对象,返回辅助应用信息列表。 | -- **示例:** +**示例:** - ```typescript - accessibility.getAbilityLists("spoken", "enable") - .then((data) => { - console.info('success data:getAbilityList1 : ' + JSON.stringify(data)); - for (let item of data) { - console.info(item.id); - console.info(item.name); - console.info(item.description); - console.info(item.bundleName); - } - }).catch((error) => { - console.error('failed to getAbilityList1 because ' + JSON.stringify(error)); - }) - ``` +```typescript +accessibility.getAbilityLists("spoken", "enable").then((data) => { + console.info('success data:getAbilityList1 : ' + JSON.stringify(data)); + for (let item of data) { + console.info(item.id); + console.info(item.name); + console.info(item.description); + console.info(item.bundleName); + } +}).catch((err) => { + console.error('failed to getAbilityList1 because ' + JSON.stringify(err)); +}); +``` ## accessibility.getAbilityLists getAbilityLists(abilityType: AbilityType, stateType: AbilityState,callback: AsyncCallback<Array<AccessibilityAbilityInfo>>): void -查询辅助应用列表。 +查询辅助应用列表,使用callback异步回调。 **系统能力**:SystemCapability.BarrierFree.Accessibility.Core -- **参数:** +**参数:** - | 参数名 | 参数类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | abilityType | [AbilityType](#abilitytype) | 是 | 辅助应用的类型。 | - | stateType | [AbilityState](#abilitystate) | 是 | 辅助应用的状态。 | - | callback | AsyncCallback<Array<[AccessibilityAbilityInfo](#accessibilityabilityinfo)>> | 是 | 回调函数,返回辅助应用信息列表。 | +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| abilityType | [AbilityType](#abilitytype) | 是 | 辅助应用的类型。 | +| stateType | [AbilityState](#abilitystate) | 是 | 辅助应用的状态。 | +| callback | AsyncCallback<Array<[AccessibilityAbilityInfo](#accessibilityabilityinfo)>> | 是 | 回调函数,返回辅助应用信息列表。 | -- **示例:** +**示例:** - ```typescript - accessibility.getAbilityLists("visual", "enable", (err, data) => { - if (err) { - console.error('failed to getAbilityList2 because ' + JSON.stringify(err)); - return; - } - console.info('success data:getAbilityList2 : ' + JSON.stringify(data)); - for (let item of data) { - console.info(item.id); - console.info(item.name); - console.info(item.description); - console.info(item.bundleName); - } - }) +```typescript +accessibility.getAbilityLists("visual", "enable", (err, data) => { + if (err) { + console.error('failed to getAbilityList2 because ' + JSON.stringify(err)); + return; + } + console.info('success data:getAbilityList2 : ' + JSON.stringify(data)); + for (let item of data) { + console.info(item.id); + console.info(item.name); + console.info(item.description); + console.info(item.bundleName); + } +}); ``` ## accessibility.getCaptionsManager8+ getCaptionsManager(): CaptionsManager -获取无障碍字幕配置。 +获取无障碍字幕配置管理实例。 **系统能力**:SystemCapability.BarrierFree.Accessibility.Hearing -- **返回值:** +**返回值:** - | 类型 | 说明 | - | -------- | -------- | - | [CaptionsManager](#captionsmanager8) | 无障碍字幕配置管理。 | +| 类型 | 说明 | +| -------- | -------- | +| [CaptionsManager](#captionsmanager8) | 无障碍字幕配置管理。 | -- **示例:** +**示例:** - ```typescript - let captionsManager = accessibility.getCaptionsManager() - ``` +```typescript +let captionsManager = accessibility.getCaptionsManager(); +``` -## accessibility.on('accessibilityStateChange' | 'touchGuideStateChange') +## accessibility.on('accessibilityStateChange') -on(type: 'accessibilityStateChange' | 'touchGuideStateChange', callback: Callback<boolean>): void +on(type: 'accessibilityStateChange', callback: Callback<boolean>): void -启用辅助应用和触摸浏览功能的状态变化监听。 +监听辅助应用启用状态变化事件。 **系统能力**:以下各项对应的系统能力有所不同,详见下表。 -- **参数:** +**参数:** - | 参数名 | 参数类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | type | string | 是 | 监听的事件类型。
- type 为'accessibilityStateChange'时表示监听类型为辅助功能启用状态变化监听;
**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
- type 为'touchGuideStateChange'时表示监听类型为触摸浏览启用状态变化监听。
**系统能力**:SystemCapability.BarrierFree.Accessibility.Vision | - | callback | Callback<boolean> | 是 | 回调函数,在启用状态变化时将状态通过此函数进行通知。 | +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| type | string | 是 | 监听的事件名,固定为‘accessibilityStateChange’,即辅助应用启用状态变化事件。 | +| callback | Callback<boolean> | 是 | 回调函数,在辅助应用启用状态变化时将状态通过此函数进行通知。 | -- **示例:** +**示例:** - ```typescript - accessibility.on('accessibilityStateChange',(data) => { - console.info('success data:subscribeStateObserver : ' + JSON.stringify(data)) - }) - ``` +```typescript +accessibility.on('accessibilityStateChange',(data) => { + console.info('success data:subscribeStateObserver : ' + JSON.stringify(data)) +}); +``` -## accessibility.off('accessibilityStateChange' | 'touchGuideStateChange') +## accessibility.on('touchGuideStateChange') -off(type: ‘accessibilityStateChange ’ | ‘touchGuideStateChange’, callback?: Callback<boolean>): void +on(type: 'touchGuideStateChange', callback: Callback<boolean>): void -关闭辅助应用和触摸浏览功能的状态变化监听。 +监听触摸浏览功能启用状态变化事件。 **系统能力**:以下各项对应的系统能力有所不同,详见下表。 -- **参数:** +**参数:** - | 参数名 | 参数类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | type | string | 否 | 监听的事件类型。
- type 为'accessibilityStateChange'时表示监听类型为辅助功能启用状态变化监听;
**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
- type 为'touchGuideStateChange'时表示监听类型为触摸浏览启用状态变化监听。
**系统能力**:SystemCapability.BarrierFree.Accessibility.Vision | - | callback | Callback<boolean> | 否 | 要取消的监听回调函数。 | +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| type | string | 是 | 监听的事件名,固定为‘touchGuideStateChange’,即触摸浏览启用状态变化事件。 | +| callback | Callback<boolean> | 是 | 回调函数,在触摸浏览启用状态变化时将状态通过此函数进行通知。 | -- **示例:** +**示例:** - ```typescript - accessibility.off('accessibilityStateChange',(data) => { - console.info('success data:unSubscribeStateObserver : ' + JSON.stringify(data)) - }) - ``` +```typescript +accessibility.on('touchGuideStateChange',(data) => { + console.info('success data:subscribeStateObserver : ' + JSON.stringify(data)) +}); +``` + +## accessibility.off('accessibilityStateChange') + +off(type: 'accessibilityStateChange', callback?: Callback<boolean>): void + +取消监听辅助应用启用状态变化事件。 + +**系统能力**:以下各项对应的系统能力有所不同,详见下表。 + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| type | string | 否 | 取消监听的事件名,固定为‘accessibilityStateChange’,即辅助应用启用状态变化事件。 | +| callback | Callback<boolean> | 否 | 回调函数,在辅助应用启用状态变化时将状态通过此函数进行通知。 | + +**示例:** + +```typescript +accessibility.off('accessibilityStateChange',(data) => { + console.info('success data:unSubscribeStateObserver : ' + JSON.stringify(data)) +}); +``` + +## accessibility.off('touchGuideStateChange') + +off(type: 'touchGuideStateChange', callback?: Callback<boolean>): void + +取消监听触摸浏览启用状态变化事件。 + +**系统能力**:以下各项对应的系统能力有所不同,详见下表。 + +**参数:** + +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| type | string | 否 | 取消监听的事件名,固定为‘touchGuideStateChange’,即触摸浏览启用状态变化事件。 | +| callback | Callback<boolean> | 否 | 回调函数,在触摸浏览启用状态变化时将状态通过此函数进行通知。 | + +**示例:** + +```typescript +accessibility.off('touchGuideStateChange',(data) => { + console.info('success data:unSubscribeStateObserver : ' + JSON.stringify(data)) +}); +``` ## accessibility.isOpenAccessibility isOpenAccessibility(): Promise<boolean> -判断是否启用了辅助功能。 +判断是否启用了辅助功能, 使用Promise异步回调。 **系统能力**:SystemCapability.BarrierFree.Accessibility.Core -- **返回值:** +**返回值:** - | 类型 | 说明 | - | -------- | -------- | - | Promise<boolean> | 如果辅助功能已启用,则返回 true;否则返回 false。 | +| 类型 | 说明 | +| -------- | -------- | +| Promise<boolean> | Promise对象,如果辅助功能已启用,则返回 true;否则返回 false。 | -- **示例:** +**示例:** - ```typescript - accessibility.isOpenAccessibility() - .then((data) => { - console.info('success data:isOpenAccessibility : ' + JSON.stringify(data)) - }).catch((error) => { - console.error('failed to isOpenAccessibility because ' + JSON.stringify(error)); - }) - ``` +```typescript +accessibility.isOpenAccessibility().then((data) => { + console.info('success data:isOpenAccessibility : ' + JSON.stringify(data)) +}).catch((err) => { + console.error('failed to isOpenAccessibility because ' + JSON.stringify(err)); +}); +``` ## accessibility.isOpenAccessibility isOpenAccessibility(callback: AsyncCallback<boolean>): void -判断是否启用了辅助功能。 +判断是否启用了辅助功能,使用callback异步回调。 **系统能力**:SystemCapability.BarrierFree.Accessibility.Core -- **参数:** +**参数:** - | 参数名 | 参数类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | callback | AsyncCallback<boolean> | 是 | 回调函数,如果辅助功能已启用,则返回 true;否则返回 false。 | +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| callback | AsyncCallback<boolean> | 是 | 回调函数,如果辅助功能已启用,则返回 true;否则返回 false。 | -- **示例:** +**示例:** - ```typescript - accessibility.isOpenAccessibility((err, data) => { - if (err) { - console.error('failed to isOpenAccessibility because ' + JSON.stringify(err)); - return; - } - console.info('success data:isOpenAccessibility : ' + JSON.stringify(data)) - }) - ``` +```typescript +accessibility.isOpenAccessibility((err, data) => { + if (err) { + console.error('failed to isOpenAccessibility because ' + JSON.stringify(err)); + return; + } + console.info('success data:isOpenAccessibility : ' + JSON.stringify(data)) +}); +``` ## accessibility.isOpenTouchGuide isOpenTouchGuide(): Promise<boolean> -判断触摸浏览模式是否开启。 +判断触摸浏览模式是否开启, 使用Promise异步回调。 **系统能力**:SystemCapability.BarrierFree.Accessibility.Vision -- **返回值:** +**返回值:** - | 类型 | 说明 | - | -------- | -------- | - | Promise<boolean> | 如果触摸浏览模式已开启,则返回 true;否则返回 false。 | +| 类型 | 说明 | +| -------- | -------- | +| Promise<boolean> | Promise对象,如果触摸浏览模式已开启,则返回 true;否则返回 false。 | -- **示例:** +**示例:** - ```typescript - accessibility.isOpenTouchGuide() - .then((data) => { - console.info('success data:isOpenTouchGuide : ' + JSON.stringify(data)) - }).catch((error) => { - console.error('failed to isOpenTouchGuide because ' + JSON.stringify(error)); - }) - ``` +```typescript +accessibility.isOpenTouchGuide().then((data) => { + console.info('success data:isOpenTouchGuide : ' + JSON.stringify(data)) +}).catch((err) => { + console.error('failed to isOpenTouchGuide because ' + JSON.stringify(err)); +}); +``` ## accessibility.isOpenTouchGuide isOpenTouchGuide(callback: AsyncCallback<boolean>): void -判断触摸浏览模式是否开启。 +判断触摸浏览模式是否开启, 使用callback异步回调。 **系统能力**:SystemCapability.BarrierFree.Accessibility.Vision -- **参数:** +**参数:** - | 参数名 | 参数类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | callback | AsyncCallback<boolean> | 是 | 回调函数,如果触摸浏览模式已开启,则返回 true;否则返回 false。 | +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| callback | AsyncCallback<boolean> | 是 | 回调函数,如果触摸浏览模式已开启,则返回 true;否则返回 false。 | -- **示例:** +**示例:** - ```typescript - accessibility.isOpenTouchGuide((err, data) => { - if (err) { - console.error('failed to isOpenTouchGuide because ' + JSON.stringify(err)); - return; - } - console.info('success data:isOpenTouchGuide : ' + JSON.stringify(data)) - }) +```typescript +accessibility.isOpenTouchGuide((err, data) => { + if (err) { + console.error('failed to isOpenTouchGuide because ' + JSON.stringify(err)); + return; + } + console.info('success data:isOpenTouchGuide : ' + JSON.stringify(data)) +}); ``` ## accessibility.sendEvent sendEvent(event: EventInfo): Promise<void> -发送无障碍事件。 +发送无障碍事件, 使用Promise异步回调。 **系统能力**:SystemCapability.BarrierFree.Accessibility.Core -- **参数:** +**参数:** - | 参数名 | 参数类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | event | [EventInfo](#eventinfo) | 是 | 无障碍事件对象。 | +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| event | [EventInfo](#eventinfo) | 是 | 无障碍事件对象。 | -- **返回值:** +**返回值:** - | 类型 | 说明 | - | -------- | -------- | - | Promise<void> | 以 Promise 形式返回结果,如果发送无障碍事件成功,则 data 有数据返回;如果发送无障碍事件失败,则 err 有数据返回。 | +| 类型 | 说明 | +| -------- | -------- | +| Promise<void> | 无返回结果的Promise对象。 | -- **示例:** +**示例:** - ```typescript - let eventInfo : accessibility.EventInfo = { - type: 'focus', - bundleName: 'bundle', - triggerAction: 'focus' - } - accessibility.sendEvent(eventInfo) - .then((data) => { - console.info('success data:sendEvent : ' + JSON.stringify(data)) - }).catch((error) => { - console.error('failed to sendEvent because ' + JSON.stringify(error)); - }) - ``` +```typescript +let eventInfo = new accessibility.EventInfo({ + "type":"click", + "bundleName":"com.example.MyApplication", + "triggerAction":"click" +}); +accessibility.sendEvent(eventInfo).then(() => { + console.info('send event success'); +}).catch((err) => { + console.error('failed to sendEvent because ' + JSON.stringify(err)); +}); +``` ## accessibility.sendEvent sendEvent(event: EventInfo, callback: AsyncCallback<void>): void -发送无障碍事件。 +发送无障碍事件, 使用callback异步回调。 **系统能力**:SystemCapability.BarrierFree.Accessibility.Core -- **参数:** +**参数:** - | 参数名 | 参数类型 | 必填 | 说明 | - | -------- | -------- | -------- | -------- | - | event | [EventInfo](#eventinfo) | 是 | 辅助事件对象。 | - | callback | AsyncCallback<void> | 是 | 回调函数,如果发送无障碍事件成功,则 AsyncCallback 中 data 有数据返回;如果发送无障碍事件失败,则 AsyncCallback 中 err 有数据返回。 | +| 参数名 | 参数类型 | 必填 | 说明 | +| -------- | -------- | -------- | -------- | +| event | [EventInfo](#eventinfo) | 是 | 辅助事件对象。 | +| callback | AsyncCallback<void> | 是 | 回调函数,如果发送无障碍事件失败,则 AsyncCallback中err有数据返回。 | -- **示例:** +**示例:** - ```typescript - let eventInfo : accessibility.EventInfo = { - type: 'focus', - bundleName: 'bundle', - triggerAction: 'focus' - } - accessibility.sendEvent(eventInfo,(err, data) => { - if (err) { - console.error('failed to sendEvent because ' + JSON.stringify(err)); - return; - } - console.info('success data:sendEvent : ' + JSON.stringify(data)) - }) +```typescript +let eventInfo = new accessibility.EventInfo({ + "type":"click", + "bundleName":"com.example.MyApplication", + "triggerAction":"click" +}); +accessibility.sendEvent(eventInfo, (err, data) => { + if (err) { + console.error('failed to sendEvent because ' + JSON.stringify(err)); + return; + } + console.info('sendEvent success'); +}); ``` diff --git a/zh-cn/application-dev/reference/apis/js-apis-application-AccessibilityExtensionAbility.md b/zh-cn/application-dev/reference/apis/js-apis-application-AccessibilityExtensionAbility.md index f9a869d66f263dc29bb2e10cbf488785f5375f66..ea67b7e858460f02207609e1b16c42d33475b878 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-application-AccessibilityExtensionAbility.md +++ b/zh-cn/application-dev/reference/apis/js-apis-application-AccessibilityExtensionAbility.md @@ -2,7 +2,7 @@ **AccessibilityExtensionAbility**基于ExtensionAbility框架,提供辅助功能业务的能力。 ->**说明:** +>![icon-note.gif](public_sys-resources/icon-note.gif) **说明:** > >本模块首批接口从API version 9开始支持,后续版本的新增接口,采用上角标单独标记接口的起始版本。 > @@ -32,36 +32,10 @@ import AccessibilityExtensionAbility from '@ohos.application.AccessibilityExtens | 名称 | 参数类型 | 可读 | 可写 | 说明 | | --------- | ---------------------------------------- | ---- | ---- | ---------- | -| eventType | [EventType](js-apis-accessibility.md#EventType) \| [WindowUpdateType](js-apis-accessibility.md#WindowUpdateType) \| [TouchGuideType](touchguidetype) \| [GestureType](gesturetype) \| [PageUpdateType](pageupdatetype) | 是 | 否 | 具体事件类型。 | +| eventType | [EventType](js-apis-accessibility.md#EventType) \| [WindowUpdateType](js-apis-accessibility.md#WindowUpdateType) \| [TouchGuideType](#touchguidetype) \| [GestureType](#gesturetype) \| [PageUpdateType](#pageupdatetype) | 是 | 否 | 具体事件类型。 | | target | AccessibilityElement | 是 | 否 | 发生事件的目标组件。 | | timeStamp | number | 是 | 否 | 事件时间戳。 | -## GesturePath - -表示手势路径信息。 - -**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core - -### 属性 - -| 名称 | 参数类型 | 可读 | 可写 | 说明 | -| ------------ | ---------------------------------------- | ---- | ---- | ------ | -| points | Array<[GesturePoint](gesturepoint)> | 是 | 是 | 手势。 | -| durationTime | number | 是 | 是 | 手势总耗时。 | - -## GesturePoint - -表示手势触摸点。 - -**系统能力**:以下各项对应的系统能力均为 SystemCapability.BarrierFree.Accessibility.Core - -### 属性 - -| 名称 | 参数类型 | 可读 | 可写 | 说明 | -| --------- | ------ | ---- | ---- | ------- | -| positionX | number | 是 | 是 | 触摸点X坐标。 | -| positionY | number | 是 | 是 | 触摸点Y坐标。 | - ## GestureType 手势事件类型。 @@ -117,16 +91,12 @@ onConnect(): void; **系统能力:** SystemCapability.BarrierFree.Accessibility.Core -**参数:** - -无 - **示例:** ```ts onConnect(): void { console.log("AxExtensionAbility onConnect"); -} +}; ``` ## AccessibilityExtensionAbility.onDisconnect @@ -137,16 +107,12 @@ onDisconnect(): void; **系统能力:** SystemCapability.BarrierFree.Accessibility.Core -**参数:** - -无 - **示例:** ```ts onDisconnect(): void { console.log("AxExtensionAbility onDisconnect"); -} +}; ``` ## AccessibilityExtensionAbility.onAccessibilityEvent @@ -171,7 +137,7 @@ onAccessibilityEvent(event: AccessibilityEvent): void { if (event.eventType == 'click') { console.log("AxExtensionAbility onAccessibilityEvent: click"); } -} +}; ``` ## AccessibilityExtensionAbility.onKeyEvent @@ -198,5 +164,5 @@ onKeyEvent(keyEvent: inputEventClient.KeyEvent): boolean { return true; } return false; -} +}; ```