diff --git a/zh-cn/application-dev/quick-start/har-package.md b/zh-cn/application-dev/quick-start/har-package.md index 7d7512b15584c6b6996e0bfe9e32b777854c2c56..1df0179b41d18a5f68545b61f8b7f383dffc739c 100644 --- a/zh-cn/application-dev/quick-start/har-package.md +++ b/zh-cn/application-dev/quick-start/har-package.md @@ -2,7 +2,7 @@ HAR(Harmony Archive)是静态共享包,可以包含代码、C++库、资源和配置文件。通过HAR可以实现多个模块或多个工程共享ArkUI组件、资源等相关代码。HAR不同于HAP,不能独立安装运行在设备上,只能作为应用模块的依赖项被引用。 ## 创建HAR模块 -HAR对应DevEco Studio工程中的“Library”类型的[Module](https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/add_new_module-0000001053223741-V3),可以通过DevEco Studio创建一个HAR模块。HAR模块默认不开启混淆能力,开启混淆能力,需要把HAR模块的build-profile.json5文件中的artifactType字段设置为obfuscation,配置如下所示: +通过DevEco Studio创建一个HAR模块,创建方式可[参考](https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/creating_har_api9-0000001518082393-V3#section143510369612)。HAR模块默认不开启混淆能力,开启混淆能力,需要把HAR模块的build-profile.json5文件中的artifactType字段设置为obfuscation,配置如下所示: ```json { @@ -90,7 +90,7 @@ HAR模块编译打包时会把资源打包到HAR中。在编译构建HAP时,De - 依赖的HAR模块,如果依赖的多个HAR之间有资源冲突,会按照依赖顺序进行覆盖(依赖顺序在前的优先级较高)。 ## 引用HAR的ArkUI组件、接口、资源 -引用HAR前,需要先配置对HAR的依赖,配置方式可[参考](https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ohos-development-npm-package-0000001222578434#section89674298391)。 +引用HAR前,需要先配置对HAR的依赖,配置方式可[参考](https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/creating_har_api9-0000001518082393-V3#section611662614153)。 ### 引用HAR的ArkUI组件 @@ -167,3 +167,7 @@ struct Index { } } ``` + +## 发布HAR + +发布HAR可[参考](https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/creating_har_api9-0000001518082393-V3#section1213451811512)。 diff --git a/zh-cn/application-dev/quick-start/in-app-hsp.md b/zh-cn/application-dev/quick-start/in-app-hsp.md index 1ce3afa89b794291bf07ef70449a43f4df41645d..3a96b330ee09c972f651dbfa00686c5f076a7dad 100644 --- a/zh-cn/application-dev/quick-start/in-app-hsp.md +++ b/zh-cn/application-dev/quick-start/in-app-hsp.md @@ -5,7 +5,7 @@ ## 开发应用内HSP -`HSP`模块可以在`DevEco Studio`中由指定模板创建,我们以创建一个名为`library`的`HSP`模块为例。基本的工程目录结构大致如下: +通过DevEco Studio创建一个HSP模块,创建方式可[参考](https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/hsp-0000001521396322-V3#section7717162312546),我们以创建一个名为`library`的`HSP`模块为例。基本的工程目录结构大致如下: ``` library ├── src @@ -88,7 +88,7 @@ export { MyTitleBar } from './components/MyTitleBar' ### 导出native方法 在`HSP`中也可以包含`C++`编写的`so`。对于`so`中的`native`方法,`HSP`通过间接的方式导出,以导出`libnative.so`的乘法接口`multi`为例: ```ts -// ibrary/src/main/ets/utils/nativeTest.ts +// library/src/main/ets/utils/nativeTest.ts import native from "libnative.so" export function nativeMulti(a: number, b: number) { @@ -103,15 +103,9 @@ export { nativeMulti } from './utils/nativeTest' ``` ## 使用应用内HSP -要使用`HSP`中的接口,首先需要在使用方的`oh-package.json5`中配置对它的依赖。如果应用内`HSP`和使用方在同一工程下,可以直接本地引用,例如: -```json -// entry/oh-package.json5 -"dependencies": { - "library": "file:../library" -} -``` -然后就可以像使用`HAR`一样调用`HSP`的对外接口了。 -例如,上面的`library`已经导出了下面这些接口: +要使用HSP中的接口,首先需要在使用方的oh-package.json5中配置对它的依赖,配置方式可[参考](https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/hsp-0000001521396322-V3#section6161154819195)。 +依赖配置成功后,就可以像使用HAR一样调用HSP的对外接口了。 例如,上面的library已经导出了下面这些接口: + ```ts // library/src/main/ets/index.ets export { Log, add, minus } from './utils/test' diff --git a/zh-cn/application-dev/reference/apis/js-apis-screen.md b/zh-cn/application-dev/reference/apis/js-apis-screen.md index ec90213b049c0a140bea2d3837d6ee697ddab435..be5d3e8e638f88ca3e410c163e20894af9813d38 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-screen.md +++ b/zh-cn/application-dev/reference/apis/js-apis-screen.md @@ -224,6 +224,89 @@ try { }; ``` +## screen.stopExpand10+ + +stopExpand(expandScreen:Array<number>, callback: AsyncCallback<void>): void + +停止屏幕的扩展模式,使用callback异步回调。 + +**系统能力:** SystemCapability.WindowManager.WindowManager.Core + +**参数:** + +| 参数名 | 类型 | 必填 | 说明 | +| ------------ | --------------------------- | --- | -------------------------------------------------------------- | +| expandScreen | Array<number> | 是 | 扩展屏幕id集合。 | +| callback | AsyncCallback<void> | 是 | 回调函数。当停止屏幕扩展模式成功,err为undefined,否则为错误对象。 | + +**错误码:** + +以下错误码的详细介绍请参见[屏幕错误码](../errorcodes/errorcode-display.md)。 + +| 错误码ID | 错误信息 | +| ------- | ----------------------- | +| 1400001 | Invalid display or screen. | + +**示例:** + +```js +try { + let expandScreenIds = [1, 2, 3]; + screen.stopExpand(expandScreenIds, (err) => { + if (err.code) { + console.error('Failed to stop expand screens. Code:' + JSON.stringify(err)); + return; + } + console.info('Succeeded in stopping expand screens.'); + }); +} catch (exception) { + console.error('Failed to stop expand screens. Code: ' + JSON.stringify(exception)); +}; +``` + +## screen.stopExpand10+ + +stopExpand(expandScreen:Array<number>): Promise<void> + +停止屏幕的扩展模式,使用Promise异步回调。 + +**系统能力:** SystemCapability.WindowManager.WindowManager.Core + +**参数:** + +| 参数名 | 类型 | 必填 | 说明 | +| ------------ | ------------------- | --- | --------------- | +| expandScreen | Array<number> | 是 | 扩展屏幕id集合。 | + +**返回值:** + +| 类型 | 说明 | +| --------------------- | ----------------------- | +| Promise<void> | 无返回结果的Promise对象。 | + +**错误码:** + +以下错误码的详细介绍请参见[屏幕错误码](../errorcodes/errorcode-display.md)。 + +| 错误码ID | 错误信息 | +| ------- | ----------------------- | +| 1400001 | Invalid display or screen. | + +**示例:** + +```js +try { + let expandScreenIds = [1, 2, 3]; + screen.stopExpand(expandScreenIds).then(() => { + console.info('Succeeded in stopping expand screens.'); + }).catch((err) => { + console.error('Failed to stop expand screens. Code:' + JSON.stringify(err)); + }); +} catch (exception) { + console.error('Failed to stop expand screens. Code:' + JSON.stringify(exception)); +}; +``` + ## screen.makeMirror makeMirror(mainScreen:number, mirrorScreen:Array<number>, callback: AsyncCallback<number>): void @@ -311,6 +394,89 @@ try { }; ``` +## screen.stopMirror10+ + +stopMirror(mirrorScreen:Array<number>, callback: AsyncCallback<void>): void + +停止屏幕的镜像模式,使用callback异步回调。 + +**系统能力:** SystemCapability.WindowManager.WindowManager.Core + +**参数:** + +| 参数名 | 类型 | 必填 | 说明 | +| ------------ | --------------------------- | --- | -------------------------------------------------------------- | +| mirrorScreen | Array<number> | 是 | 镜像屏幕id集合。 | +| callback | AsyncCallback<void> | 是 | 回调函数。当停止屏幕镜像模式成功,err为undefined,否则为错误对象。 | + +**错误码:** + +以下错误码的详细介绍请参见[屏幕错误码](../errorcodes/errorcode-display.md)。 + +| 错误码ID | 错误信息 | +| ------- | ----------------------- | +| 1400001 | Invalid display or screen. | + +**示例:** + +```js +try { + let mirrorScreenIds = [1, 2, 3]; + screen.stopMirror(mirrorScreenIds, (err) => { + if (err.code) { + console.error('Failed to stop mirror screens. Code:' + JSON.stringify(err)); + return; + } + console.info('Succeeded in stopping mirror screens.'); + }); +} catch (exception) { + console.error('Failed to stop mirror screens. Code: ' + JSON.stringify(exception)); +}; +``` + +## screen.stopMirror10+ + +stopMirror(mirrorScreen:Array<number>): Promise<void> + +停止屏幕的镜像模式,使用Promise异步回调。 + +**系统能力:** SystemCapability.WindowManager.WindowManager.Core + +**参数:** + +| 参数名 | 类型 | 必填 | 说明 | +| ------------ | ------------------- | --- | --------------- | +| mirrorScreen | Array<number> | 是 | 镜像屏幕id集合。 | + +**返回值:** + +| 类型 | 说明 | +| --------------------- | ----------------------- | +| Promise<void> | 无返回结果的Promise对象。 | + +**错误码:** + +以下错误码的详细介绍请参见[屏幕错误码](../errorcodes/errorcode-display.md)。 + +| 错误码ID | 错误信息 | +| ------- | ----------------------- | +| 1400001 | Invalid display or screen. | + +**示例:** + +```js +try { + let mirrorScreenIds = [1, 2, 3]; + screen.stopMirror(mirrorScreenIds).then(() => { + console.info('Succeeded in stopping mirror screens.'); + }).catch((err) => { + console.error('Failed to stop mirror screens. Code:' + JSON.stringify(err)); + }); +} catch (exception) { + console.error('Failed to stop mirror screens. Code:' + JSON.stringify(exception)); +}; +``` + ## screen.createVirtualScreen createVirtualScreen(options:VirtualScreenOption, callback: AsyncCallback<Screen>): void diff --git a/zh-cn/application-dev/reference/apis/js-apis-url.md b/zh-cn/application-dev/reference/apis/js-apis-url.md index 9545f710b3bb38e7c78ce52010f2b5e4c92ff25e..77fe1371423c81cc9f493010766834a5ae18b783 100755 --- a/zh-cn/application-dev/reference/apis/js-apis-url.md +++ b/zh-cn/application-dev/reference/apis/js-apis-url.md @@ -23,7 +23,7 @@ URLParams的构造函数。 | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | -| init | string[][] \| Record<string, string> \| string \| URLSearchParams | 否 | 入参对象。
- string[][]:字符串二维数组
- Record<string, string>:对象列表
- string:字符串
- URLSearchParams:对象 | +| init | string[][] \| Record<string, string> \| string \| URLSearchParams | 否 | 入参对象。
- string[][]:字符串二维数组
- Record<string, string>:对象列表
- string:字符串
- URLSearchParams:对象
- 默认值:null。 | **示例:** @@ -150,7 +150,7 @@ forEach(callbackFn: (value: string, key: string, searchParams: this) => void, th | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | | callbackFn | function | 是 | 回调函数。 | -| thisArg | Object | 否 | callbackFn被调用时用作this值 | +| thisArg | Object | 否 | callbackFn被调用时用作this值,默认值是本对象。 | **表1** callbackFn的参数说明 @@ -404,7 +404,7 @@ URL的构造函数。 | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | | url | string | 是 | 入参对象。 | -| base | string \| URL | 否 | 入参字符串或者对象。
- string:字符串
- URL:字符串或对象 | +| base | string \| URL | 否 | 入参字符串或者对象。
- string:字符串
- URL:字符串或对象
- 默认值是空字符串或空对象。 | **示例:** @@ -444,7 +444,7 @@ URL静态成员函数。 | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | | url | string | 是 | 入参对象。 | -| base | string \| URL | 否 | 入参字符串或者对象。
- string:字符串
- URL:字符串或对象 | +| base | string \| URL | 否 | 入参字符串或者对象。
- string:字符串
- URL:字符串或对象
- 默认值是空字符串或空对象。 | **错误码:** @@ -522,7 +522,7 @@ URLSearchParams的构造函数。 | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | -| init | string[][] \| Record<string, string> \| string \| URLSearchParams | 否 | 入参对象。
- string[][]:字符串二维数组
- Record<string, string>:对象列表
- string:字符串
- URLSearchParams:对象 | +| init | string[][] \| Record<string, string> \| string \| URLSearchParams | 否 | 入参对象。
- string[][]:字符串二维数组
- Record<string, string>:对象列表
- string:字符串
- URLSearchParams:对象
- 默认值:null。 | **示例:** @@ -665,7 +665,7 @@ forEach(callbackFn: (value: string, key: string, searchParams: this) => void, th | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | | callbackFn | function | 是 | 回调函数。 | -| thisArg | Object | 否 | callbackFn被调用时用作this值 | +| thisArg | Object | 否 | callbackFn被调用时用作this值,默认值是本对象。 | **表1** callbackFn的参数说明 diff --git a/zh-cn/application-dev/reference/apis/js-apis-util.md b/zh-cn/application-dev/reference/apis/js-apis-util.md index a556dac2502d4c7de69cedd050a590491b15707e..3e8509ff9481f85335f746710310feab38530ae3 100755 --- a/zh-cn/application-dev/reference/apis/js-apis-util.md +++ b/zh-cn/application-dev/reference/apis/js-apis-util.md @@ -547,7 +547,7 @@ TextEncoder的构造函数。 | 参数名 | 类型 | 必填 | 说明 | | ----- | ---- | ---- | ---- | -| encoding | string | 否 | 编码格式 | +| encoding | string | 否 | 编码格式,默认值为'utf-8'。 | **示例:** @@ -567,7 +567,7 @@ encodeInto(input?: string): Uint8Array | 参数名 | 类型 | 必填 | 说明 | | ------ | ------ | ---- | ------------------ | -| input | string | 否 | 需要编码的字符串。 | +| input | string | 否 | 需要编码的字符串,默认值是空字符串。 | **返回值:** @@ -665,7 +665,7 @@ encode(input?: string): Uint8Array | 参数名 | 类型 | 必填 | 说明 | | -------- | -------- | -------- | -------- | -| input | string | 否 | 需要编码的字符串。 | +| input | string | 否 | 需要编码的字符串,默认值是空字符串。 | **返回值:** diff --git a/zh-cn/application-dev/reference/apis/js-apis-wifiManager.md b/zh-cn/application-dev/reference/apis/js-apis-wifiManager.md index 241776a9120c3c76f25f800a1738db8399034e3b..5abef285bc074a3bc2a5c04f95b781651c6d55e0 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-wifiManager.md +++ b/zh-cn/application-dev/reference/apis/js-apis-wifiManager.md @@ -162,9 +162,9 @@ getScanResults(callback: AsyncCallback<Array<WifiScanInfo>>): void **示例:** ```js - import wifi from '@ohos.wifi'; + import wifi from '@ohos.wifiManager'; - wifi.getScanInfos((err, result) => { + wifi.getScanResults((err, result) => { if (err) { console.error("get scan info error"); return; @@ -185,7 +185,7 @@ getScanResults(callback: AsyncCallback<Array<WifiScanInfo>>): void } }); - wifi.getScanInfos().then(result => { + wifi.getScanResults().then(result => { var len = Object.keys(result).length; console.log("wifi received scan info: " + len); for (var i = 0; i < len; ++i) { @@ -247,6 +247,37 @@ WLAN热点信息。 | WIFI_SEC_TYPE_WAPI_PSK9+ | 9 | WAPI-PSK加密类型。 | +## WifiBandType10+ + +表示WIFI频段类型的枚举。 + +**系统能力:** SystemCapability.Communication.WiFi.STA + +| **名称** | **值** | **说明** | +| -------- | -------- | -------- | +| WIFI_BAND_NONE | 0 | 无效频段类型。 | +| WIFI_BAND_2G | 1 | 2.4G频段类型。 | +| WIFI_BAND_5G | 2 | 5G频段类型。 | +| WIFI_BAND_6G | 3 | 6G频段类型。 | +| WIFI_BAND_60G | 4 | 60G频段类型。 | + +## WifiStandard10+ + +表示WIFI标准的枚举。 + +**系统能力:** SystemCapability.Communication.WiFi.STA + +| **名称** | **值** | **说明** | +| -------- | -------- | -------- | +| WIFI_STANDARD_UNDEFINED | 0 | 无效WIFI标准类型。 | +| WIFI_STANDARD_11A | 1 | 802.11a WiFi标准类型。 | +| WIFI_STANDARD_11B | 2 | 802.11b WiFi标准类型。 | +| WIFI_STANDARD_11G | 3 | 802.11g WiFi标准类型。 | +| WIFI_STANDARD_11N | 4 | 802.11n WiFi标准类型。 | +| WIFI_STANDARD_11AC | 5 | 802.11ac WiFi标准类型。 | +| WIFI_STANDARD_11AX | 6 | 802.11ax WiFi标准类型。 | +| WIFI_STANDARD_11AD | 7 | 802.11ad WiFi标准类型。 | + ## WifiInfoElem9+ WLAN热点信息。 @@ -623,7 +654,7 @@ getCandidateConfigs():  Array<[WifiDeviceConfig](#wifideviceconfig)> connectToCandidateConfig(networkId: number): void -连接到候选网络。 +应用使用该接口连接到自己添加的候选网络(如果当前已经连接到热点,需要先断开连接)。 **需要权限:** ohos.permission.SET_WIFI_INFO @@ -648,7 +679,7 @@ connectToCandidateConfig(networkId: number): void connectToNetwork(networkId: number): void -连接到指定网络。 +连接到指定网络(如果当前已经连接到热点,请先使用disconnet()接口断开连接)。 **系统接口:** 此接口为系统接口。 @@ -675,7 +706,7 @@ connectToNetwork(networkId: number): void connectToDevice(config: WifiDeviceConfig): void -连接到指定网络。 +连接到指定网络(如果当前已经连接到热点,请先使用disconnet()接口断开连接)。 **系统接口:** 此接口为系统接口。 @@ -803,7 +834,7 @@ getLinkedInfo(callback: AsyncCallback<WifiLinkedInfo>): void **示例:** ```js - import wifi from '@ohos.wifi'; + import wifi from '@ohos.wifiManager'; wifi.getLinkedInfo((err, data) => { if (err) { @@ -834,18 +865,22 @@ getLinkedInfo(callback: AsyncCallback<WifiLinkedInfo>): void | networkId | number | 是 | 否 | 网络配置ID。
**系统接口:** 此接口为系统接口。 | | rssi | number | 是 | 否 | 热点的信号强度(dBm)。 | | band | number | 是 | 否 | WLAN接入点的频段。 | -| linkSpeed | number | 是 | 否 | WLAN接入点的速度。 | +| linkSpeed | number | 是 | 否 | WLAN接入点的上行速度。 | +| rxLinkSpeed10+ | number | 是 | 否 | WLAN接入点的下行速度。 | +| maxSupportedTxLinkSpeed10+ | number | 是 | 否 | 当前支持的最大上行速率。 | +| maxSupportedRxLinkSpeed10+ | number | 是 | 否 | 当前支持的最大下行速率。 | | frequency | number | 是 | 否 | WLAN接入点的频率。 | | isHidden | boolean | 是 | 否 | WLAN接入点是否是隐藏网络。 | | isRestricted | boolean | 是 | 否 | WLAN接入点是否限制数据量。 | | chload | number | 是 | 否 | 连接负载,值越大表示负载约高。
**系统接口:** 此接口为系统接口。 | | snr | number | 是 | 否 | 信噪比。
**系统接口:** 此接口为系统接口。 | -| macType9+ | number | 是 | 否 | MAC地址类型。 | +| macType | number | 是 | 否 | MAC地址类型。 | | macAddress | string | 是 | 否 | 设备的MAC地址。 | | ipAddress | number | 是 | 否 | WLAN连接的IP地址。 | | suppState | [SuppState](#suppstate) | 是 | 否 | 请求状态。
**系统接口:** 此接口为系统接口。 | | connState | [ConnState](#connstate) | 是 | 否 | WLAN连接状态。 | - +| channelWidth10+ | [WifiChannelWidth](#wifichannelwidth) | 是 | 否 | 当前连接热点的信道带宽。 | +| wifiStandard10+ | [WifiStandard](#wifistandard) | 是 | 否 | 当前连接热点的WiFi标准。 | ## ConnState9+ @@ -1248,6 +1283,44 @@ removeDevice(id: number): void | -------- | -------- | | 2501000 | Operation failed.| +## wifi.isBandTypeSupported10+ + +isBandTypeSupported(bandType: WifiBandType): boolean + +判断当前频段是否支持。 + +**需要权限:** ohos.permission.GET_WIFI_INFO。 + +**系统能力:** SystemCapability.Communication.WiFi.STA + +**错误码:** + +以下错误码的详细介绍请参见[WIFI错误码](../errorcodes/errorcode-wifi.md)。 + +| **类型** | **说明** | + | -------- | -------- | +| 2501000 | Operation failed.| + +## wifi.get5GChannelList10+ + +get5GChannelList(): Array + +获取当前设备支持的5G信道列表。 + +**系统接口:** 此接口为系统接口。 + +**需要权限:** ohos.permission.GET_WIFI_INFO 和 ohos.permission.GET_WIFI_CONFIG。 + +**系统能力:** SystemCapability.Communication.WiFi.STA + +**错误码:** + +以下错误码的详细介绍请参见[WIFI错误码](../errorcodes/errorcode-wifi.md)。 + +| **类型** | **说明** | + | -------- | -------- | +| 2501000 | Operation failed.| + ## wifi.enableHotspot9+ enableHotspot(): void @@ -1376,12 +1449,12 @@ setHotspotConfig(config: HotspotConfig): void | **名称** | **类型** | **可读** | **可写** | **说明** | | -------- | -------- | -------- | -------- | -------- | -| ssid | string | 是 | 否 | 热点的SSID,编码格式为UTF-8。 | -| securityType | [WifiSecurityType](#wifisecuritytype) | 是 | 否 | 加密类型。 | -| band | number | 是 | 否 | 热点的带宽。1: 2.4G, 2: 5G, 3: 双模频段 | -| preSharedKey | string | 是 | 否 | 热点的密钥。 | -| maxConn | number | 是 | 否 | 最大设备连接数。 | - +| ssid | string | 是 | 是 | 热点的SSID,编码格式为UTF-8。 | +| securityType | [WifiSecurityType](#wifisecuritytype) | 是 | 是 | 加密类型。 | +| band | number | 是 | 是 | 热点的带宽。1: 2.4G, 2: 5G, 3: 双模频段 | +| channel10+ | number | 是 | 是 | 热点的信道(2.4G:1~14,5G:7~196,双模频段:暂不支持)。 | +| preSharedKey | string | 是 | 是 | 热点的密钥。 | +| maxConn | number | 是 | 是 | 最大设备连接数。 | ## wifi.getHotspotConfig9+ @@ -1780,7 +1853,7 @@ p2pConnect(config: WifiP2PConfig): void **示例:** ```js - import wifi from '@ohos.wifi'; + import wifi from '@ohos.wifiManager'; var recvP2pConnectionChangeFunc = result => { console.info("p2p connection change receive event: " + JSON.stringify(result)); @@ -2085,7 +2158,7 @@ off(type: "wifiStateChange", callback?: Callback<number>): void **示例:** ```js - import wifi from '@ohos.wifi'; + import wifi from '@ohos.wifiManager'; var recvPowerNotifyFunc = result => { console.info("Receive power state change event: " + result); diff --git a/zh-cn/application-dev/reference/apis/js-apis-xml.md b/zh-cn/application-dev/reference/apis/js-apis-xml.md index cd5afe9467f8a4ab42c40cadbedb4ee0b3f1512e..903d4bf2e6296495beabe0f32c759e1302ed59c7 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-xml.md +++ b/zh-cn/application-dev/reference/apis/js-apis-xml.md @@ -32,7 +32,7 @@ XmlSerializer的构造函数。 ```js let arrayBuffer = new ArrayBuffer(2048); -let thatSer = new xml.XmlSerializer(arrayBuffer,"utf-8"); +let thatSer = new xml.XmlSerializer(arrayBuffer, "utf-8"); thatSer.setDeclaration(); let result = ''; let view = new Uint8Array(arrayBuffer); @@ -400,13 +400,9 @@ let strXml = ' ' + ' ' + ''; -let arrayBuffer = new ArrayBuffer(strXml.length); -let bufView = new Uint8Array(arrayBuffer); -let strLen = strXml.length; -for (let i = 0; i < strLen; ++i) { - bufView[i] = strXml.charCodeAt(i); -} -let that = new xml.XmlPullParser(arrayBuffer, 'UTF-8'); +let textEncoder = new util.TextEncoder(); +let arrbuffer = textEncoder.encodeInto(strXml); +let that = new xml.XmlPullParser(arrbuffer.buffer, 'UTF-8'); let str1 = ''; function func1(name, value){ str1 += name+':'+value; @@ -442,13 +438,9 @@ let strXml = ' Work' + ' Play' + ''; -let arrayBuffer = new ArrayBuffer(strXml.length); -let bufView = new Uint8Array(arrayBuffer); -let strLen = strXml.length; -for (let tmp = 0; tmp < strLen; ++tmp) { - bufView[tmp] = strXml.charCodeAt(tmp); -} -let that = new xml.XmlPullParser(arrayBuffer); +let textEncoder = new util.TextEncoder(); +let arrbuffer = textEncoder.encodeInto(strXml); +let that = new xml.XmlPullParser(arrbuffer.buffer); let arrTag = {}; let str = ""; let i = 0; @@ -513,13 +505,9 @@ let strXml = ' Work' + ' Play' + ''; -let arrayBuffer = new ArrayBuffer(strXml.length); -let bufView = new Uint8Array(arrayBuffer); -let strLen = strXml.length; -for (let tmp = 0; tmp < strLen; ++tmp) { - bufView[tmp] = strXml.charCodeAt(tmp); -} -let that = new xml.XmlPullParser(arrayBuffer); +let textEncoder = new util.TextEncoder(); +let arrbuffer = textEncoder.encodeInto(strXml); +let that = new xml.XmlPullParser(arrbuffer.buffer); let arrTag = {}; let str = ""; let i = 0; @@ -560,13 +548,9 @@ let strXml = ' Work' + ' Play' + ''; -let arrayBuffer = new ArrayBuffer(strXml.length); -let bufView = new Uint8Array(arrayBuffer); -let strLen = strXml.length; -for (let tmp = 0; tmp < strLen; ++tmp) { - bufView[tmp] = strXml.charCodeAt(tmp); -} -let that = new xml.XmlPullParser(arrayBuffer); +let textEncoder = new util.TextEncoder(); +let arrbuffer = textEncoder.encodeInto(strXml); +let that = new xml.XmlPullParser(arrbuffer.buffer); let arrTag = {}; let str = ""; let i = 0; @@ -610,13 +594,9 @@ let strXml = ' Work' + ' Play' + ''; -let arrayBuffer = new ArrayBuffer(strXml.length); -let bufView = new Uint8Array(arrayBuffer); -let strLen = strXml.length; -for (let tmp = 0; tmp < strLen; ++tmp) { - bufView[tmp] = strXml.charCodeAt(tmp); -} -let that = new xml.XmlPullParser(arrayBuffer); +let textEncoder = new util.TextEncoder(); +let arrbuffer = textEncoder.encodeInto(strXml); +let that = new xml.XmlPullParser(arrbuffer.buffer); let arrTag = {}; let str = ""; let i = 0; @@ -657,13 +637,9 @@ let strXml = ' Work' + ' Play' + ''; -let arrayBuffer = new ArrayBuffer(strXml.length); -let bufView = new Uint8Array(arrayBuffer); -let strLen = strXml.length; -for (let tmp = 0; tmp < strLen; ++tmp) { - bufView[tmp] = strXml.charCodeAt(tmp); -} -let that = new xml.XmlPullParser(arrayBuffer); +let textEncoder = new util.TextEncoder(); +let arrbuffer = textEncoder.encodeInto(strXml); +let that = new xml.XmlPullParser(arrbuffer.buffer); let arrTag = {}; let str = ""; let i = 0; @@ -703,13 +679,9 @@ let strXml = ' Work' + ' Play' + ''; -let arrayBuffer = new ArrayBuffer(strXml.length); -let bufView = new Uint8Array(arrayBuffer); -let strLen = strXml.length; -for (let tmp = 0; tmp < strLen; ++tmp) { - bufView[tmp] = strXml.charCodeAt(tmp); -} -let that = new xml.XmlPullParser(arrayBuffer); +let textEncoder = new util.TextEncoder(); +let arrbuffer = textEncoder.encodeInto(strXml); +let that = new xml.XmlPullParser(arrbuffer.buffer); let arrTag = {}; let str = ""; let i = 0; @@ -749,13 +721,9 @@ let strXml = ' Work' + ' Play' + ''; -let arrayBuffer = new ArrayBuffer(strXml.length); -let bufView = new Uint8Array(arrayBuffer); -let strLen = strXml.length; -for (let tmp = 0; tmp < strLen; ++tmp) { - bufView[tmp] = strXml.charCodeAt(tmp); -} -let that = new xml.XmlPullParser(arrayBuffer); +let textEncoder = new util.TextEncoder(); +let arrbuffer = textEncoder.encodeInto(strXml); +let that = new xml.XmlPullParser(arrbuffer.buffer); let arrTag = {}; let str = ""; let i = 0; @@ -796,13 +764,9 @@ let strXml = ' Work' + ' Play' + ''; -let arrayBuffer = new ArrayBuffer(strXml.length); -let bufView = new Uint8Array(arrayBuffer); -let strLen = strXml.length; -for (let tmp = 0; tmp < strLen; ++tmp) { - bufView[tmp] = strXml.charCodeAt(tmp); -} -let that = new xml.XmlPullParser(arrayBuffer); +let textEncoder = new util.TextEncoder(); +let arrbuffer = textEncoder.encodeInto(strXml); +let that = new xml.XmlPullParser(arrbuffer.buffer); let arrTag = {}; let str = ""; let i = 0; @@ -842,13 +806,9 @@ let strXml = ' Work' + ' Play' + ''; -let arrayBuffer = new ArrayBuffer(strXml.length); -let bufView = new Uint8Array(arrayBuffer); -let strLen = strXml.length; -for (let tmp = 0; tmp < strLen; ++tmp) { - bufView[tmp] = strXml.charCodeAt(tmp); -} -let that = new xml.XmlPullParser(arrayBuffer); +let textEncoder = new util.TextEncoder(); +let arrbuffer = textEncoder.encodeInto(strXml); +let that = new xml.XmlPullParser(arrbuffer.buffer); let arrTag = {}; let str = ""; let i = 0; @@ -888,13 +848,9 @@ let strXml = ' Work' + ' Play' + ''; -let arrayBuffer = new ArrayBuffer(strXml.length); -let bufView = new Uint8Array(arrayBuffer); -let strLen = strXml.length; -for (let tmp = 0; tmp < strLen; ++tmp) { - bufView[tmp] = strXml.charCodeAt(tmp); -} -let that = new xml.XmlPullParser(arrayBuffer); +let textEncoder = new util.TextEncoder(); +let arrbuffer = textEncoder.encodeInto(strXml); +let that = new xml.XmlPullParser(arrbuffer.buffer); let arrTag = {}; let str = ""; let i = 0; @@ -933,13 +889,9 @@ let strXml = ' Work' + ' Play' + ''; -let arrayBuffer = new ArrayBuffer(strXml.length); -let bufView = new Uint8Array(arrayBuffer); -let strLen = strXml.length; -for (let tmp = 0; tmp < strLen; ++tmp) { - bufView[tmp] = strXml.charCodeAt(tmp); -} -let that = new xml.XmlPullParser(arrayBuffer); +let textEncoder = new util.TextEncoder(); +let arrbuffer = textEncoder.encodeInto(strXml); +let that = new xml.XmlPullParser(arrbuffer.buffer); let arrTag = {}; let str = ""; let i = 0;