提交 5f96f8fb 编写于 作者: Z zaki

update the docs of accessibility

Signed-off-by: Nzaki <zhoujun141@huawei.com>
Change-Id: I1e534f1d82d7584e40c080a6ca701f67387ceea0
上级 477ba986
# 手势路径
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&lt;[GesturePoint](js-apis-accessibility-GesturePoint.md#gesturepoint)&gt; | 是 | 是 | 手势触摸点。 |
| durationTime | number | 是 | 是 | 手势总耗时, 单位为毫秒。 |
### constructor
constructor(durationTime: number);
构造函数。
**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| durationTime | number | 是 | 手势总耗时,单位为毫秒。 |
**示例:**
```typescript
let durationTime = 20;
let gesturePath = new GesturePath(durationTime);
```
# 手势触摸点
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);
```
# 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\<string>): Promise\<void>;
设置关注的事件类型
设置关注的目标包名,使用Promise异步回调
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
......@@ -91,19 +91,52 @@ setTargetBundleName(targetNames: Array\<string>): Promise\<void>;
| 类型 | 说明 |
| ---------------------- | --------------------- |
| Promise&lt;boolean&gt; | Promise对象。返回当前设置是否成功。 |
| Promise&lt;void&gt; | 无返回结果的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\<string>, callback: AsyncCallback\<void>): void;
设置关注的目标包名,使用callback异步回调。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| ----------- | ------------------- | ---- | -------- |
| targetNames | Array&lt;string&gt; | 是 | 关注的目标包名。 |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调函数,如果设置关注的目标包名失败,则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\<AccessibilityElement>;
获取焦点元素。
获取焦点元素, 使用Promise异步回调
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
......@@ -117,77 +150,296 @@ getFocusElement(isAccessibilityFocus?: boolean): Promise\<AccessibilityElement>;
| 类型 | 说明 |
| ----------------------------------- | ---------------------- |
| Promise&lt;AccessibilityElement&gt; | Promise对象。返回当前对应的焦点元素。 |
| Promise&lt;AccessibilityElement&gt; | Promise对象,返回当前对应的焦点元素。 |
**示例:**
```ts
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\<AccessibilityElement>): void;
获取焦点元素, 使用callback异步回调。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| callback | AsyncCallback&lt;AccessibilityElement&gt; | 是 | 回调函数,返回当前对应的焦点元素。 |
**示例:**
```ts
this.context.getFocusElement().then(focusElement => {
console.log("AxExtensionAbility getFocusElement success");
})
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\<AccessibilityElement>): void;
获取焦点元素, 使用callback异步回调。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------------------- | ------- | ---- | ------------------- |
| isAccessibilityFocus | boolean | 是 | 获取的是否是无障碍焦点元素。 |
| callback | AsyncCallback&lt;AccessibilityElement&gt; | 是 | 回调函数,返回当前对应的焦点元素。 |
**示例:**
```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\<AccessibilityElement>;
获取窗口的根节点元素
获取指定窗口的根节点元素, 使用Promise异步回调
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | ------ | ---- | --------------------------- |
| windowId | number | 否 | 指定获取根节点元素的窗口,未指定则从当前活跃窗口获取。 |
| -------------------- | ------- | ---- | ------------------- |
| windowId | number | 否 | 指定窗口的编号,未指定则从当前活跃窗口获取。 |
**返回值:**
| 类型 | 说明 |
| ----------------------------------- | ----------------------- |
| Promise&lt;AccessibilityElement&gt; | Promise对象。返回当前对应的根节点元素。 |
| ----------------------------------- | ---------------------- |
| Promise&lt;AccessibilityElement&gt; | Promise对象,返回指定屏幕的所有窗口。 |
**示例:**
```ts
this.context.getWindowRootElement().then(rootElement => {
console.log("AxExtensionAbility getWindowRootElement success");
})
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\<AccessibilityElement>): void;
获取指定窗口的根节点元素, 使用callback异步回调。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| callback | AsyncCallback&lt;AccessibilityElement&gt; | 是 | 回调函数,返回指定窗口的根节点元素。 |
**示例:**
```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\<AccessibilityElement>): void;
获取指定屏幕中的所有窗口, 使用callback异步回调。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------------------- | ------- | ---- | ------------------- |
| windowId | number | 是 | 指定窗口的编号,未指定则从当前活跃窗口获取。 |
| callback | AsyncCallback&lt;AccessibilityElement&gt; | 是 | 回调函数,返回指定窗口的根节点元素。 |
**示例:**
```ts
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<Array\<AccessibilityElement>>;
getWindows(displayId?: number): Promise\<Array\<AccessibilityElement>>;
获取用户可见的窗口列表
获取指定屏幕中的所有窗口, 使用Promise异步回调
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| --------- | ------ | ---- | ------------------------- |
| displayId | number | 否 | 指定获取窗口信息的屏幕,未指定则从默认主屏幕获取。 |
| -------------------- | ------- | ---- | ------------------- |
| displayId | number | 否 | 指定的屏幕编号,未指定则从默认主屏幕获取。 |
**返回值:**
| 类型 | 说明 |
| ---------------------------------------- | ------------------------ |
| Promise&lt;Array&lt;AccessibilityElement&gt;&gt; | Promise对象。返回当前对应的窗口列表信息。 |
| ----------------------------------- | ---------------------- |
| Promise&lt;Array&lt;AccessibilityElement&gt;&gt; | Promise对象,返回指定屏幕的所有窗口。 |
**示例:**
```ts
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\<Array\<AccessibilityElement>>): void;
获取指定屏幕中的所有窗口, 使用callback异步回调。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| callback | AsyncCallback&lt;Array&lt;AccessibilityElement&gt;&gt; | 是 | 回调函数,返回指定屏幕的所有窗口。 |
**示例:**
```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\<Array\<AccessibilityElement>>): void;
获取指定屏幕中的所有窗口, 使用callback异步回调。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------------------- | ------- | ---- | ------------------- |
| displayId | number | 是 | 指定的屏幕编号,未指定则从默认主屏幕获取。 |
| callback | AsyncCallback&lt;Array&lt;AccessibilityElement&gt;&gt; | 是 | 回调函数,返回指定屏幕的所有窗口。 |
**示例:**
```ts
this.context.getWindows().then(windows => {
console.log("AxExtensionAbility getWindows success");
})
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\<void>;
注入手势,使用Promise异步回调。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| ----------- | ---------------------------------------- | ---- | -------------- |
| gesturePath | [GesturePath](js-apis-accessibility-GesturePath.md#gesturepath) | 是 | 表示手势的路径信息。 |
**返回值:**
| 类型 | 说明 |
| ----------------------------------- | ---------------------- |
| Promise&lt;void&gt; | 无返回结果的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>): void
注入手势。
注入手势,使用callback异步回调
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
......@@ -195,8 +447,8 @@ injectGesture(gesturePath: GesturePath, callback: AsyncCallback\<void>): void
| 参数名 | 参数类型 | 必填 | 说明 |
| ----------- | ---------------------------------------- | ---- | -------------- |
| gesturePath | [GesturePath](js-apis-application-AccessibilityExtensionAbility.md#GesturePath) | 是 | 表示手势的路径信息。 |
| callback | AsyncCallback&lt;void&gt; | 是 | 表示注入手势执行结果的回调。 |
| gesturePath | [GesturePath](js-apis-accessibility-GesturePath.md#gesturepath) | 是 | 表示手势的路径信息。 |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调函数,表示注入手势执行结果的回调。 |
**示例:**
......@@ -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
## AccessibilityElement<sup>9</sup>
无障碍节点元素。
**系统能力**:以下各项对应的系统能力均为SystemCapability.BarrierFree.Accessibility.Core
## attributeNames
attributeNames\<T extends keyof ElementAttributeValues>(): Promise\<Array\<T>>;
获取节点元素的所有属性名称。
获取节点元素的所有属性名称,使用Promise异步回调
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
......@@ -222,28 +484,61 @@ attributeNames\<T extends keyof ElementAttributeValues>(): Promise\<Array\<T>>;
| 类型 | 说明 |
| ---------------------------------------- | ------------------------ |
| Promise&lt;Array&lt;T&gt;&gt; | Promise对象。返回获取元素所有属性名称的调用结果。 |
| Promise&lt;Array&lt;T&gt;&gt; | 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\<T extends keyof ElementAttributeValues>(callback: AsyncCallback\<Array\<T>>): void;
获取节点元素的所有属性名称,使用callback异步回调。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| ----------- | ---------------------------------------- | ---- | -------------- |
| callback | AsyncCallback&lt;Array&lt;T&gt;&gt; | 是 | 回调函数,返回节点元素的所有属性名称。 |
**示例:**
```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\<T extends keyof ElementAttributeValues>(attributeName: T): Promise\<ElementAttributeValues[T]>;
根据属性名称获取属性值。
根据属性名称获取属性值,使用Promise异步回调
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
......@@ -257,29 +552,65 @@ attributeValue\<T extends keyof ElementAttributeValues>(attributeName: T): Promi
| 类型 | 说明 |
| ---------------------------------------- | ------------------------ |
| Promise&lt;Array&lt;ElementAttributeValues[T]&gt;&gt; | Promise对象。返回根据属性名称获取属性值的调用结果。 |
| Promise&lt;ElementAttributeValues[T]&gt; | 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\<T extends keyof ElementAttributeValues>(attributeName: T,
callback: AsyncCallback\<ElementAttributeValues[T]>): void;
## AccessibilityElement.actionNames
根据属性名称获取属性值,使用callback异步回调。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| ----------- | ---------------------------------------- | ---- | -------------- |
| attributeName | T | 是 | 表示属性的名称。 |
| callback | AsyncCallback&lt;ElementAttributeValues[T]&gt; | 是 | 回调函数,返回根据节点属性名称获取的属性值。 |
**示例:**
```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\<Array\<string>>;
获取节点元素支持的所有操作名称。
获取节点元素支持的所有操作名称,使用Promise异步回调
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
......@@ -287,28 +618,61 @@ actionNames(): Promise\<Array\<string>>;
| 类型 | 说明 |
| ---------------------------------------- | ------------------------ |
| Promise&lt;Array&lt;string&gt;&gt; | Promise对象。返回获取节点元素支持的所有操作名称的调用结果。 |
| Promise&lt;Array&lt;string&gt;&gt; | 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\<Array\<string>>): void;
获取节点元素支持的所有操作名称,使用callback异步回调。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| ----------- | ---------------------------------------- | ---- | -------------- |
| callback | AsyncCallback&lt;Array&lt;string&gt;&gt; | 是 | 回调函数,返回节点元素支持的所有操作名称。 |
**示例:**
```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\<boolean>;
根据操作名称执行某个操作。
根据操作名称执行某个操作,使用Promise异步回调
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
......@@ -323,29 +687,139 @@ performAction(actionName: string, parameters?: object): Promise\<boolean>;
| 类型 | 说明 |
| ---------------------------------------- | ------------------------ |
| Promise&lt;Array&lt;boolean&gt;&gt; | Promise对象。返回获取元素所有属性名的调用结果。 |
| Promise&lt;boolean&gt; | 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
## AccessibilityElement.findElement
performAction(actionName: string, callback: AsyncCallback\<boolean>): void;
根据操作名称执行某个操作,使用callback异步回调。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| ----------- | ---------------------------------------- | ---- | -------------- |
| actionName | string | 是 | 表示属性的名称。 |
| callback | AsyncCallback&lt;boolean&gt; | 是 | 回调函数,返回执行指定操作后的回调结果,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\<boolean>): void;
根据操作名称执行某个操作,使用callback异步回调。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| ----------- | ---------------------------------------- | ---- | -------------- |
| actionName | string | 是 | 表示属性的名称。 |
| parameters | object | 是 | 表示执行操作时所需要的参数。 |
| callback | AsyncCallback&lt;boolean&gt; | 是 | 回调函数,返回执行指定操作后的回调结果,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\<Array\<AccessibilityElement>>;
查询节点元素的指定内容。
根据节点内容查询所有节点元素。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| ----------- | ---------------------------------------- | ---- | -------------- |
| type | string | 是 | 固定为'content', 表示查找的类型为节点元素内容。 |
| condition | string | 是 | 表示查找的条件。 |
**返回值:**
| 类型 | 说明 |
| ---------------------------------------- | ------------------------ |
| Promise&lt;Array&lt;AccessibilityElement&gt;&gt; | 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\<Array\<AccessibilityElement>>): void;
根据节点内容查询所有节点元素。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
......@@ -355,25 +829,175 @@ findElement(type: 'content', condition: string): Promise\<Array\<AccessibilityEl
| ----------- | ---------------------------------------- | ---- | -------------- |
| type | string | 是 | 固定为'content',表示查找的类型为节点元素内容。 |
| condition | string | 是 | 表示查找的条件。 |
| callback | AsyncCallback&lt;Array&lt;AccessibilityElement&gt;&gt; | 是 | 回调函数,返回满足指定查询关键字的所有节点元素。 |
**示例:**
```ts
let accessibilityElement;
let type = 'content';
let condition = 'keyword';
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('focusType')
findElement(type: 'focusType', condition: FocusType): Promise\<AccessibilityElement>;
根据焦点元素类型查询节点元素。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| ----------- | ---------------------------------------- | ---- | -------------- |
| type | string | 是 | 固定为'focusType', 表示查询的类型为节点的焦点元素类型。 |
| condition | [FocusType](#focustype) | 是 | 表示查询焦点元素的类型。 |
**返回值:**
| 类型 | 说明 |
| ---------------------------------------- | ------------------------ |
| Promise&lt;AccessibilityElement&gt; | Promise对象,返回满足指定查询焦点元素类型的节点元素。 |
**示例:**
```ts
let accessibilityElement;
let type = 'focusType';
let condition = 'normal';
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('focusType')
findElement(type: 'focusType', condition: FocusType, callback: AsyncCallback\<AccessibilityElement>): void;
根据焦点元素类型查询节点元素。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| ----------- | ---------------------------------------- | ---- | -------------- |
| type | string | 是 | 固定为'focusType', 表示查询的类型为节点的焦点元素类型。 |
| condition | [FocusType](#focustype) | 是 | 表示查询焦点元素的类型。 |
| callback | AsyncCallback&lt;AccessibilityElement&gt; | 是 | 回调函数,返回满足指定查询焦点元素类型的节点元素。 |
**示例:**
```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\<AccessibilityElement>;
根据下一焦点元素方向查询节点元素。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| ----------- | ---------------------------------------- | ---- | -------------- |
| type | string | 是 | 固定为'focusDirection', 表示查询的类型为节点的下一焦点元素方向。 |
| condition | [FocusDirection](#focusdirection) | 是 | 表示查询下一焦点元素的方向。 |
**返回值:**
| 类型 | 说明 |
| ---------------------------------------- | ------------------------ |
| Promise&lt;Array&lt;T&gt;&gt; | Promise对象。返回获取元素所有属性名的调用结果。 |
| Promise&lt;AccessibilityElement&gt; | Promise对象,返回满足指定查询下一焦点元素方向的节点元素。 |
**示例:**
```ts
let accessibilityElement;
let type = 'focusDirection';
let condition = 'up';
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('focusDirection')
findElement(type: 'focusDirection', condition: FocusDirection, callback: AsyncCallback\<AccessibilityElement>): void;
根据下一焦点元素方向查询所有节点元素。
**系统能力:** SystemCapability.BarrierFree.Accessibility.Core
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| ----------- | ---------------------------------------- | ---- | -------------- |
| type | string | 是 | 固定为'focusDirection', 表示查询的类型为节点的下一焦点元素方向。 |
| condition | [FocusDirection](#focusdirection) | 是 | 表示下一查询焦点元素的方向。 |
| callback | AsyncCallback&lt;AccessibilityElement&gt; | 是 | 回调函数,返回满足指定查询下一焦点元素方向的节点元素。 |
**示例:**
```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);
}
```
......@@ -144,7 +144,7 @@ import accessibility from '@ohos.accessibility';
## CaptionsManager<sup>8+</sup>
字幕配置。
字幕配置管理,在调用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&lt;boolean&gt;): void;
注册字幕配置启用的监听函数
监听字幕配置启用状态变化事件
- **参数:**
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| type | string | 是 | 监听字幕配置启用状态。 |
| callback | Callback&lt;boolean&gt; | 是 | 回调函数,在启用状态变化时将状态通过此函数进行通知。 |
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| type | string | 是 | 监听的事件名,固定为‘enableChange’,即字幕配置启用状态变化事件。 |
| callback | Callback&lt;boolean&gt; | 是 | 回调函数,在启用状态变化时将状态通过此函数进行通知。 |
- **示例:**
**示例:**
```typescript
let captionsManager = accessibility.getCaptionsManager();
captionsManager.on('enableChange',(data) => {
console.info('success data:subscribeStateObserver : ' + JSON.stringify(data))
})
});
```
### on('styleChange')
on(type: 'styleChange', callback: Callback&lt;CaptionsStyle&gt;): void;
注册字幕风格变化的监听函数
监听字幕风格变化事件
- **参数:**
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| type | string | 是 | 监听字幕风格变化。 |
| callback | Callback&lt;[CaptionsStyle](#captionsstyle8)&gt; | 是 | 回调函数,在字幕风格变化时通过此函数进行通知。 |
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| type | string | 是 | 监听的事件名,固定为‘styleChange’,即字幕风格变化事件。 |
| callback | Callback&lt;[CaptionsStyle](#captionsstyle8)&gt; | 是 | 回调函数,在字幕风格变化时通过此函数进行通知。 |
- **示例:**
**示例:**
```typescript
let captionsManager = accessibility.getCaptionsManager();
captionsManager.on('styleChange',(data) => {
console.info('success data:subscribeStateObserver : ' + JSON.stringify(data))
})
});
```
### off('enableChange')
off(type: 'enableChange', callback?: Callback&lt;boolean&gt;): void;
移除字幕配置启用的监听函数
取消监听字幕配置启用状态变化事件
- **参数:**
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| type | string | 是 | 监听字幕配置启用状态。 |
| callback | Callback&lt;boolean&gt; | 否 | 回调函数,在启用状态变化时将状态通过此函数进行通知。 |
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| type | string | 是 | 取消监听的事件名,固定为‘enableChange’,即字幕配置启用状态变化事件。 |
| callback | Callback&lt;boolean&gt; | 否 | 回调函数,在字幕配置启用状态变化时将状态通过此函数进行通知。 |
- **示例:**
**示例:**
```typescript
let captionsManager = accessibility.getCaptionsManager();
captionsManager.off('enableChange')
captionsManager.off('enableChange',(data) => {
console.info('success data:unSubscribeStateObserver : ' + JSON.stringify(data))
});
```
### off('styleChange')
off(type: 'styleChange', callback?: Callback&lt;CaptionsStyle&gt;): void;
移除字幕风格变化的监听函数
取消字幕风格变化监听事件
- **参数:**
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| type | string | 是 | 字幕风格变化。 |
| callback | Callback&lt;[CaptionsStyle](#captionsstyle8)&gt; | 否 | 回调函数,在字幕风格变化时通过此函数进行通知。 |
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| type | string | 是 | 取消监听的事件名,固定为‘styleChange’,即字幕风格变化事件。 |
| callback | Callback&lt;[CaptionsStyle](#captionsstyle8)&gt; | 否 | 回调函数,在字幕风格变化时通过此函数进行通知。 |
- **示例:**
**示例:**
```typescript
let captionsManager = accessibility.getCaptionsManager();
captionsManager.off('styleChange')
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,28 +344,27 @@ constructor(jsonObject)
getAbilityLists(abilityType: AbilityType, stateType: AbilityState): Promise&lt;Array&lt;AccessibilityAbilityInfo&gt;&gt;
查询辅助应用列表。
查询辅助应用列表,使用Promise异步回调
**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
- **参数:**
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| abilityType | [AbilityType](#abilitytype) | 是 | 辅助应用的类型。 |
| stateType | [AbilityState](#abilitystate) | 是 | 辅助应用的状态。 |
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| abilityType | [AbilityType](#abilitytype) | 是 | 辅助应用的类型。 |
| stateType | [AbilityState](#abilitystate) | 是 | 辅助应用的状态。 |
- **返回值:**
**返回值:**
| 类型 | 说明 |
| -------- | -------- |
| Promise&lt;Array&lt;[AccessibilityAbilityInfo](#accessibilityabilityinfo)&gt;&gt; | 返回辅助应用信息列表。 |
| 类型 | 说明 |
| -------- | -------- |
| Promise&lt;Array&lt;[AccessibilityAbilityInfo](#accessibilityabilityinfo)&gt;&gt; | Promise对象,返回辅助应用信息列表。 |
- **示例:**
**示例:**
```typescript
accessibility.getAbilityLists("spoken", "enable")
.then((data) => {
```typescript
accessibility.getAbilityLists("spoken", "enable").then((data) => {
console.info('success data:getAbilityList1 : ' + JSON.stringify(data));
for (let item of data) {
console.info(item.id);
......@@ -367,31 +372,31 @@ getAbilityLists(abilityType: AbilityType, stateType: AbilityState): Promise&lt;A
console.info(item.description);
console.info(item.bundleName);
}
}).catch((error) => {
console.error('failed to getAbilityList1 because ' + JSON.stringify(error));
})
```
}).catch((err) => {
console.error('failed to getAbilityList1 because ' + JSON.stringify(err));
});
```
## accessibility.getAbilityLists
getAbilityLists(abilityType: AbilityType, stateType: AbilityState,callback: AsyncCallback&lt;Array&lt;AccessibilityAbilityInfo&gt;&gt;): void
查询辅助应用列表。
查询辅助应用列表,使用callback异步回调
**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
- **参数:**
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| abilityType | [AbilityType](#abilitytype) | 是 | 辅助应用的类型。 |
| stateType | [AbilityState](#abilitystate) | 是 | 辅助应用的状态。 |
| callback | AsyncCallback&lt;Array&lt;[AccessibilityAbilityInfo](#accessibilityabilityinfo)&gt;&gt; | 是 | 回调函数,返回辅助应用信息列表。 |
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| abilityType | [AbilityType](#abilitytype) | 是 | 辅助应用的类型。 |
| stateType | [AbilityState](#abilitystate) | 是 | 辅助应用的状态。 |
| callback | AsyncCallback&lt;Array&lt;[AccessibilityAbilityInfo](#accessibilityabilityinfo)&gt;&gt; | 是 | 回调函数,返回辅助应用信息列表。 |
- **示例:**
**示例:**
```typescript
accessibility.getAbilityLists("visual", "enable", (err, data) => {
```typescript
accessibility.getAbilityLists("visual", "enable", (err, data) => {
if (err) {
console.error('failed to getAbilityList2 because ' + JSON.stringify(err));
return;
......@@ -403,241 +408,284 @@ getAbilityLists(abilityType: AbilityType, stateType: AbilityState,callback: Asyn
console.info(item.description);
console.info(item.bundleName);
}
})
});
```
## accessibility.getCaptionsManager<sup>8+</sup>
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&lt;boolean&gt;): void
on(type: 'accessibilityStateChange', callback: Callback&lt;boolean&gt;): void
启用辅助应用和触摸浏览功能的状态变化监听
监听辅助应用启用状态变化事件
**系统能力**:以下各项对应的系统能力有所不同,详见下表。
- **参数:**
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| type | string | 是 | 监听的事件类型。<br/>-&nbsp;type 为'accessibilityStateChange'时表示监听类型为辅助功能启用状态变化监听;<br/>**系统能力**:SystemCapability.BarrierFree.Accessibility.Core<br/>-&nbsp;type 为'touchGuideStateChange'时表示监听类型为触摸浏览启用状态变化监听。<br/>**系统能力**:SystemCapability.BarrierFree.Accessibility.Vision |
| callback | Callback&lt;boolean&gt; | 是 | 回调函数,在启用状态变化时将状态通过此函数进行通知。 |
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| type | string | 是 | 监听的事件名,固定为‘accessibilityStateChange’,即辅助应用启用状态变化事件。 |
| callback | Callback&lt;boolean&gt; | 是 | 回调函数,在辅助应用启用状态变化时将状态通过此函数进行通知。 |
- **示例:**
**示例:**
```typescript
accessibility.on('accessibilityStateChange',(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&lt;boolean&gt;): void
on(type: 'touchGuideStateChange', callback: Callback&lt;boolean&gt;): void
关闭辅助应用和触摸浏览功能的状态变化监听
监听触摸浏览功能启用状态变化事件
**系统能力**:以下各项对应的系统能力有所不同,详见下表。
- **参数:**
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| type | string | 否 | 监听的事件类型。<br/>-&nbsp;type 为'accessibilityStateChange'时表示监听类型为辅助功能启用状态变化监听;<br/>**系统能力**:SystemCapability.BarrierFree.Accessibility.Core<br/>-&nbsp;type 为'touchGuideStateChange'时表示监听类型为触摸浏览启用状态变化监听。<br/>**系统能力**:SystemCapability.BarrierFree.Accessibility.Vision |
| callback | Callback&lt;boolean&gt; | 否 | 要取消的监听回调函数。 |
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| type | string | 是 | 监听的事件名,固定为‘touchGuideStateChange’,即触摸浏览启用状态变化事件。 |
| callback | Callback&lt;boolean&gt; | 是 | 回调函数,在触摸浏览启用状态变化时将状态通过此函数进行通知。 |
- **示例:**
**示例:**
```typescript
accessibility.off('accessibilityStateChange',(data) => {
```typescript
accessibility.on('touchGuideStateChange',(data) => {
console.info('success data:subscribeStateObserver : ' + JSON.stringify(data))
});
```
## accessibility.off('accessibilityStateChange')
off(type: 'accessibilityStateChange', callback?: Callback&lt;boolean&gt;): void
取消监听辅助应用启用状态变化事件。
**系统能力**:以下各项对应的系统能力有所不同,详见下表。
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| type | string | 否 | 取消监听的事件名,固定为‘accessibilityStateChange’,即辅助应用启用状态变化事件。 |
| callback | Callback&lt;boolean&gt; | 否 | 回调函数,在辅助应用启用状态变化时将状态通过此函数进行通知。 |
**示例:**
```typescript
accessibility.off('accessibilityStateChange',(data) => {
console.info('success data:unSubscribeStateObserver : ' + JSON.stringify(data))
})
```
});
```
## accessibility.off('touchGuideStateChange')
off(type: 'touchGuideStateChange', callback?: Callback&lt;boolean&gt;): void
取消监听触摸浏览启用状态变化事件。
**系统能力**:以下各项对应的系统能力有所不同,详见下表。
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| type | string | 否 | 取消监听的事件名,固定为‘touchGuideStateChange’,即触摸浏览启用状态变化事件。 |
| callback | Callback&lt;boolean&gt; | 否 | 回调函数,在触摸浏览启用状态变化时将状态通过此函数进行通知。 |
**示例:**
```typescript
accessibility.off('touchGuideStateChange',(data) => {
console.info('success data:unSubscribeStateObserver : ' + JSON.stringify(data))
});
```
## accessibility.isOpenAccessibility
isOpenAccessibility(): Promise&lt;boolean&gt;
判断是否启用了辅助功能。
判断是否启用了辅助功能, 使用Promise异步回调
**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
- **返回值:**
**返回值:**
| 类型 | 说明 |
| -------- | -------- |
| Promise&lt;boolean&gt; | 如果辅助功能已启用,则返回 true;否则返回 false。 |
| 类型 | 说明 |
| -------- | -------- |
| Promise&lt;boolean&gt; | Promise对象,如果辅助功能已启用,则返回 true;否则返回 false。 |
- **示例:**
**示例:**
```typescript
accessibility.isOpenAccessibility()
.then((data) => {
```typescript
accessibility.isOpenAccessibility().then((data) => {
console.info('success data:isOpenAccessibility : ' + JSON.stringify(data))
}).catch((error) => {
console.error('failed to isOpenAccessibility because ' + JSON.stringify(error));
})
```
}).catch((err) => {
console.error('failed to isOpenAccessibility because ' + JSON.stringify(err));
});
```
## accessibility.isOpenAccessibility
isOpenAccessibility(callback: AsyncCallback&lt;boolean&gt;): void
判断是否启用了辅助功能。
判断是否启用了辅助功能,使用callback异步回调
**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
- **参数:**
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| callback | AsyncCallback&lt;boolean&gt; | 是 | 回调函数,如果辅助功能已启用,则返回 true;否则返回 false。 |
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| callback | AsyncCallback&lt;boolean&gt; | 是 | 回调函数,如果辅助功能已启用,则返回 true;否则返回 false。 |
- **示例:**
**示例:**
```typescript
accessibility.isOpenAccessibility((err, 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&lt;boolean&gt;
判断触摸浏览模式是否开启。
判断触摸浏览模式是否开启, 使用Promise异步回调
**系统能力**:SystemCapability.BarrierFree.Accessibility.Vision
- **返回值:**
**返回值:**
| 类型 | 说明 |
| -------- | -------- |
| Promise&lt;boolean&gt; | 如果触摸浏览模式已开启,则返回 true;否则返回 false。 |
| 类型 | 说明 |
| -------- | -------- |
| Promise&lt;boolean&gt; | Promise对象,如果触摸浏览模式已开启,则返回 true;否则返回 false。 |
- **示例:**
**示例:**
```typescript
accessibility.isOpenTouchGuide()
.then((data) => {
```typescript
accessibility.isOpenTouchGuide().then((data) => {
console.info('success data:isOpenTouchGuide : ' + JSON.stringify(data))
}).catch((error) => {
console.error('failed to isOpenTouchGuide because ' + JSON.stringify(error));
})
```
}).catch((err) => {
console.error('failed to isOpenTouchGuide because ' + JSON.stringify(err));
});
```
## accessibility.isOpenTouchGuide
isOpenTouchGuide(callback: AsyncCallback&lt;boolean&gt;): void
判断触摸浏览模式是否开启。
判断触摸浏览模式是否开启, 使用callback异步回调
**系统能力**:SystemCapability.BarrierFree.Accessibility.Vision
- **参数:**
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| callback | AsyncCallback&lt;boolean&gt; | 是 | 回调函数,如果触摸浏览模式已开启,则返回 true;否则返回 false。 |
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| callback | AsyncCallback&lt;boolean&gt; | 是 | 回调函数,如果触摸浏览模式已开启,则返回 true;否则返回 false。 |
- **示例:**
**示例:**
```typescript
accessibility.isOpenTouchGuide((err, 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&lt;void&gt;
发送无障碍事件。
发送无障碍事件, 使用Promise异步回调
**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
- **参数:**
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| event | [EventInfo](#eventinfo) | 是 | 无障碍事件对象。 |
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| event | [EventInfo](#eventinfo) | 是 | 无障碍事件对象。 |
- **返回值:**
**返回值:**
| 类型 | 说明 |
| -------- | -------- |
| Promise&lt;void&gt; | 以 Promise 形式返回结果,如果发送无障碍事件成功,则 data 有数据返回;如果发送无障碍事件失败,则 err 有数据返回。 |
| 类型 | 说明 |
| -------- | -------- |
| Promise&lt;void&gt; | 无返回结果的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&lt;void&gt;): void
发送无障碍事件。
发送无障碍事件, 使用callback异步回调
**系统能力**:SystemCapability.BarrierFree.Accessibility.Core
- **参数:**
**参数:**
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| event | [EventInfo](#eventinfo) | 是 | 辅助事件对象。 |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调函数,如果发送无障碍事件成功,则 AsyncCallback 中 data 有数据返回;如果发送无障碍事件失败,则 AsyncCallback 中 err 有数据返回。 |
| 参数名 | 参数类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| event | [EventInfo](#eventinfo) | 是 | 辅助事件对象。 |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调函数,如果发送无障碍事件失败,则 AsyncCallback中err有数据返回。 |
- **示例:**
**示例:**
```typescript
let eventInfo : accessibility.EventInfo = {
type: 'focus',
bundleName: 'bundle',
triggerAction: 'focus'
}
accessibility.sendEvent(eventInfo,(err, 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('success data:sendEvent : ' + JSON.stringify(data))
})
console.info('sendEvent success');
});
```
......@@ -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&lt;[GesturePoint](gesturepoint)&gt; | 是 | 是 | 手势。 |
| 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;
}
};
```
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册