diff --git a/zh-cn/application-dev/arkts-utils/linear-container.md b/zh-cn/application-dev/arkts-utils/linear-container.md index b4ffedbe6d3730134589b1bb6fbaf892546a0ad4..8e4dc623a6feec3ec0c2c449b81d4d46f43a2352 100644 --- a/zh-cn/application-dev/arkts-utils/linear-container.md +++ b/zh-cn/application-dev/arkts-utils/linear-container.md @@ -20,7 +20,7 @@ ArrayList进行增、删、改、查操作的相关API如下: | 增加元素 | 通过add(element: T)函数每次在数组尾部增加一个元素。 | | 增加元素 | 通过insert(element: T, index: number)在指定位置插入一个元素。 | | 访问元素 | 通过arr\[index]获取指定index对应的value值,通过指令获取保证访问速度。 | -| 访问元素 | 通过forEach(callbackFn: (value: T, index?: number, vector?: Vector<T>) => void, thisArg?: Object): void访问整个ArrayList容器的元素。 | +| 访问元素 | 通过forEach(callbackFn: (value: T, index?: number, arrlist?: ArrayList<T>) => void, thisArg?: Object): void访问整个ArrayList容器的元素。 | | 访问元素 | 通过\[Symbol.iterator]():IterableIterator<T>迭代器进行数据访问。 | | 修改元素 | 通过arr\[index] = xxx修改指定index位置对应的value值。 | | 删除元素 | 通过remove(element: T)删除第一个匹配到的元素。 | @@ -46,7 +46,7 @@ Vector进行增、删、改、查操作的相关API如下: | 访问元素 | 通过getLastElement()获取最后一个元素。 | | 访问元素 | 通过getlndexOf(element:T)获取第一个匹配到元素的位置。 | | 访问元素 | 通过getLastlndexOf(element:T)获取最后一个匹配到元素的位置。 | -| 访问元素 | 通过forEach(callbackfn: (value: T, index?: number, Vector?: Vector<T>) => thisArg?: Object)访问整个Vector的元素。 | +| 访问元素 | 通过forEach(callbackFn: (value: T, index?: number, Vector?: Vector<T>) => void, thisArg?: Object)访问整个Vector的元素。 | | 访问元素 | 通过\[Symbol.iterator]():IterableIterator<T>迭代器进行数据访问。 | | 修改元素 | 通过vec\[index]=xxx修改指定index位置对应的value值。 | | 修改元素 | 通过set(index:number,element:T)修改指定index位置的元素值为element。 | @@ -79,10 +79,9 @@ List和[LinkedList](../reference/apis/js-apis-linkedlist.md)相比,LinkedList | 访问元素 | 通过forEach(callbackfn: (value:T, index?: number, list?: List<T>)=> void,thisArg?: Object)访问整个List的元素。 | | 修改元素 | 通过list\[index] = xxx修改指定index位置对应的value值。 | | 修改元素 | 通过set(index:number, element: T)修改指定index位置的元素值为element。 | -| 修改元素 | 通过replaceAllElements(callbackfn:(value: T,index?: number,list?: List<T>)=>T,thisArg?: Object)对List内元素进行替换操作。 | +| 修改元素 | 通过replaceAllElements(callbackFn:(value: T,index?: number,list?: List<T>)=>T,thisArg?: Object)对List内元素进行替换操作。 | | 删除元素 | 通过removeBylndex(index:number)删除index位置对应的value值。 | | 删除元素 | 通过remove(element:T)删除第一个匹配到的元素。 | -| 删除元素 | 通过removeByRange(fromIndex:number,toIndex:number)删除指定范围内的元素。 | ## LinkedList @@ -100,17 +99,16 @@ LinkedList和[ArrayList](../reference/apis/js-apis-arraylist.md)相比,插入 | 操作 | 描述 | | ---------- | ------ | | 增加元素 | 通过add(element: T)函数每次在数组尾部增加一个元素。 | -| 增加元素 | 通过insert(element: T, index: number)在指定位置插入一个元素。 | +| 增加元素 | 通过insert(index: number, element: T)在指定位置插入一个元素。 | | 访问元素 | 通过list\[index]获取指定index对应的value值,通过指令获取保证访问速度。 | | 访问元素 | 通过get(index: number)获取指定index位置对应的元素。 | | 访问元素 | 通过getFirst()获取第一个元素。 | | 访问元素 | 通过getLast()获取最后一个元素。 | | 访问元素 | 通过getlndexOf(element: T)获取第一个匹配到元素的位置。 | -| 访问元素 | 通过getLastlndexOf(element: T)获取最后一个匹配到元素的位置 | -| 访问元素 | 通过forEach(callbackfn: (value: T, index?: number, list?: LinkedList<T>) => void,thisArg?: Object)访问整个LinkedList的元素。 | +| 访问元素 | 通过getLastlndexOf(element: T)获取最后一个匹配到元素的位置。 | +| 访问元素 | 通过forEach(callbackFn: (value: T, index?: number, list?: LinkedList<T>) => void, thisArg?: Object)访问整个LinkedList的元素。 | | 修改元素 | 通过list\[index]=xxx修改指定index位置对应的value值。 | | 修改元素 | 通过set(index: number,element: T)修改指定index位置的元素值为element。 | -| 修改元素 | 通过replaceAllElements(callbackfn:(value: T,index?: number,list?: LinkedList<T>)=>T,thisArg?: Object)对List内元素进行替换操作。 | | 删除元素 | 通过removeBylndex(index: number)删除index位置对应的value值。 | | 删除元素 | 通过remove(element: T)删除第一个匹配到的元素。 | @@ -137,9 +135,9 @@ Deque进行增、删、改、查操作的相关API如下: | 访问元素 | 通过getLast()获取队尾元素的value值,但是不进行出队操作。 | | 访问元素 | 通过popFirst()获取队首元素的value值,并进行出队操作。 | | 访问元素 | 通过popLast()获取队尾元素的value值,并进行出队操作。 | -| 访问元素 | 通过forEach(callbackfn:(value: T, index?: number, deque?: Deque<T>) => void,thisArg?: Object)访问整个Deque的元素。 | +| 访问元素 | 通过forEach(callbackFn:(value: T, index?: number, deque?: Deque<T>) => void, thisArg?: Object)访问整个Deque的元素。 | | 访问元素 | 通过\[Symbol.iterator]():IterableIterator<T>迭代器进行数据访问。 | -| 修改元素 | 通过forEach(callbackfn:(value: T, index?: number, deque?: Deque<T>)=> void,thisArg?: Object)对队列进行修改操作。 | +| 修改元素 | 通过forEach(callbackFn:(value: T, index?: number, deque?: Deque<T>)=> void, thisArg?: Object)对队列进行修改操作。 | | 删除元素 | 通过popFirst()对队首元素进行出队操作并删除。 | | 删除元素 | 通过popLast()对队尾元素进行出队操作并删除。 | @@ -163,9 +161,9 @@ Queue进行增、删、改、查操作的相关API如下: | 增加元素 | 通过add(element: T)函数每次在队尾增加一个元素。 | | 访问元素 | 通过getFirst()获取队首元素的value值,但是不进行出队操作。 | | 访问元素 | 通过pop()获取队首元素的value值,并进行出队操作。 | -| 访问元素 | 通过forEach(callbackfn: (value: T, index?: number, queue?: Queue<T>) => void,thisArg?: Object)访问整个Queue的元素。 | +| 访问元素 | 通过forEach(callbackFn: (value: T, index?: number, queue?: Queue<T>) => void,thisArg?: Object)访问整个Queue的元素。 | | 访问元素 | 通过\[Symbol.iterator]():IterableIterator<T>迭代器进行数据访问。 | -| 修改元素 | 通过forEach(callbackfn:(value: T, index?: number, queue?: Queue<T>) => void,thisArg?: Object)对队列进行修改操作。 | +| 修改元素 | 通过forEach(callbackFn:(value: T, index?: number, queue?: Queue<T>) => void,thisArg?: Object)对队列进行修改操作。 | | 删除元素 | 通过pop()对队首进行出队操作并删除。 | @@ -186,10 +184,10 @@ Stack进行增、删、改、查操作的相关API如下: | 增加元素 | 通过push(item: T)函数每次在栈顶增加一个元素。 | | 访问元素 | 通过peek()获取栈顶元素的value值,但是不进行出栈操作。 | | 访问元素 | 通过pop()获取栈顶的value值,并进行出栈操作。 | -| 访问元素 | 通过forEach(callbackfn: (value: T, index?: number, stack?: Stack<T>) => void, thisArg?: Object)访问整个Stack的元素。 | +| 访问元素 | 通过forEach(callbackFn: (value: T, index?: number, stack?: Stack<T>) => void, thisArg?: Object)访问整个Stack的元素。 | | 访问元素 | 通过\[Symbol.iterator]():IterableIterator<T>迭代器进行数据访问。 | | 访问元素 | 通过locate(element: T)获取元素对应的位置。 | -| 修改元素 | 通过forEach(callbackfn:(value: T, index?: number, stack?: Stack<T>) => void,thisArg?: Object)对栈内元素进行修改操作。 | +| 修改元素 | 通过forEach(callbackFn:(value: T, index?: number, stack?: Stack<T>) => void, thisArg?: Object)对栈内元素进行修改操作。 | | 删除元素 | 通过pop()对栈顶进行出栈操作并删除。 | diff --git a/zh-cn/application-dev/quick-start/module-configuration-file.md b/zh-cn/application-dev/quick-start/module-configuration-file.md index 10594988c223d4b08555eafafac96c4e100a7f68..13ba09c49d047564463d3c14418767168e75f3fd 100644 --- a/zh-cn/application-dev/quick-start/module-configuration-file.md +++ b/zh-cn/application-dev/quick-start/module-configuration-file.md @@ -745,8 +745,8 @@ dependencies标签示例: | 属性名称 | 含义 | 数据类型 | 是否可缺省 | | ----------- | ------------------------------ | -------- | ---------- | | uri | 标识用于访问该数据代理的uri,不同的数据代理配置的uri不可重复,且需要满足`datashareproxy://当前应用包名/xxx`的格式。 | 字符串 | 不可缺省。 | -| requiredReadPermission | 标识从该数据代理中读取数据所需要的权限,非系统应用配置的权限的等级需为system_basic或system_core,系统应用可以不配置权限,且权限的等级没有限制。权限等级可以参考[权限列表](../security/permission-list.md)。 | 字符串 | 可缺省,缺省值为空。 | -| requiredWritePermission | 标识向该数据代理中读取数据所需要的权限。非系统应用配置的权限的等级需为system_basic或system_core,系统应用可以不配置权限,且权限的等级没有限制。权限等级可以参考[权限列表](../security/permission-list.md)。 | 字符串 | 可缺省,缺省值为空。 | +| requiredReadPermission | 标识从该数据代理中读取数据所需要的权限,若不配置,则其他应用无法使用该代理。非系统应用配置的权限的等级需为system_basic或system_core,系统应用配置的权限的等级没有限制。权限等级可以参考[权限列表](../security/permission-list.md)。 | 字符串 | 可缺省,缺省值为空。 | +| requiredWritePermission | 标识向该数据代理中写入数据所需要的权限,若不配置,则其他应用无法使用该代理。非系统应用配置的权限的等级需为system_basic或system_core,系统应用配置的权限的等级没有限制。权限等级可以参考[权限列表](../security/permission-list.md)。 | 字符串 | 可缺省,缺省值为空。 | | [metadata](#metadata标签) | 标识该数据代理的元信息,只支持配置name和resource字段。 | 对象 | 可缺省,缺省值为空。 | proxyData标签示例: diff --git a/zh-cn/application-dev/reference/apis/js-apis-bundleManager-abilityInfo.md b/zh-cn/application-dev/reference/apis/js-apis-bundleManager-abilityInfo.md index d09b592100eaa3bf74c6962b585c369cc3dfdfa2..42c3cab4e2f4763fe8ddfbea66152370397ca1fd 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-bundleManager-abilityInfo.md +++ b/zh-cn/application-dev/reference/apis/js-apis-bundleManager-abilityInfo.md @@ -14,11 +14,11 @@ Ability信息,系统应用可以通过[bundleManager.queryAbilityInfo](js-apis | bundleName | string | 是 | 否 | 应用Bundle名称。 | | moduleName | string | 是 | 否 | Ability所属的HAP的名称。 | | name | string | 是 | 否 | Ability名称。 | -| label | string | 是 | 否 | Ability对用户显示的名称。 | +| label | string | 是 | 否 | Ability对用户显示的名称的资源描述符,如:"label": "$string: mainability_description"。 | | labelId | number | 是 | 否 | Ability的标签资源id。 | | description | string | 是 | 否 | Ability的描述。 | | descriptionId | number | 是 | 否 | Ability的描述资源id。 | -| icon | string | 是 | 否 | Ability的图标资源文件索引。 | +| icon | string | 是 | 否 | Ability的图标资源描述符,如"icon": "$media:icon"。 | | iconId | number | 是 | 否 | Ability的图标资源id。 | | process | string | 是 | 否 | Ability的进程,如果不设置,默认为包的名称。 | | exported | boolean | 是 | 否 | 判断Ability是否可以被其他应用调用。 | diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-richtext.md b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-richtext.md index e29d853d6a68151476bb6d81d3eeef83564de0c4..bbb0ad303a1e5adeff7fe88970fc55324027974e 100644 --- a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-richtext.md +++ b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-richtext.md @@ -83,7 +83,7 @@ struct RichTextExample { console.info('RichText onComplete'); }) .width(500) - .height(400) + .height(500) .backgroundColor(0XBDDB69) RichText('layoutWeight(1)') .onStart(() => { diff --git a/zh-cn/release-notes/changelogs/OpenHarmony_4.0.9.5/changelogs-formfwk.md b/zh-cn/release-notes/changelogs/OpenHarmony_4.0.9.5/changelogs-formfwk.md index da84b7dd06276aa903b6e163758d0c55465de007..ae1e218d4c961ae5cadeb0d84d739b8c9279212b 100644 --- a/zh-cn/release-notes/changelogs/OpenHarmony_4.0.9.5/changelogs-formfwk.md +++ b/zh-cn/release-notes/changelogs/OpenHarmony_4.0.9.5/changelogs-formfwk.md @@ -11,8 +11,6 @@ **关键的接口/组件变更** -涉及接口移动、权限修改前的接口原型: - | 接口 | 修改前所属d.ts | 修改后所属d.ts | 修改前所需权限 | 修改后所需权限 | | -------- | -------- | -------- | -------- | -------- | | on('formAdd') | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM | ohos.permission.OBSERVE_FORM_RUNNING | @ohos.app.form.formHost.d.ts | @ohos.app.form.formObserver.d.ts | ohos.permission.REQUIRE_FORM|ohos.permission.OBSERVE_FORM_RUNNING| @@ -49,3 +47,98 @@ try { } ``` +## cl.formfwk.2 事件订阅,取消订阅相关接口(on/off)参数顺序调整 + +事件订阅,取消订阅相关接口(on/off)中的callback调整为接口最后一个参数。 + +**变更影响** + +对于已发布的js接口,可能影响三方应用的兼容性。 + +**关键的接口/组件变更** + +修改前的接口原型: + +```js +function on(type: 'formAdd', observerCallback: Callback, bundleName?: string): void; +function off(type: 'formAdd', observerCallback?: Callback, bundleName?: string): void; + +function on(type: 'formRemove', observerCallback: Callback, bundleName?: string): void; +function off(type: 'formRemove', observerCallback?: Callback, bundleName?: string): void; + +function on( + type: 'notifyVisible', + observerCallback: Callback>, + hostBundleName?: string + ): void; +function off( + type: 'notifyVisible', + observerCallback?: Callback>, + hostBundleName?: string + ): void; + +function on( + type: 'notifyInvisible', + observerCallback: Callback>, + hostBundleName?: string + ): void; +function off( + type: 'notifyInvisible', + observerCallback?: Callback>, + hostBundleName?: string + ): void; +``` + +修改后的接口原型: + +```js +function on(type: 'formAdd', observerCallback: Callback): void; +function on(type: 'formAdd', hostBundleName: string, observerCallback: Callback): void; +function off(type: 'formAdd', hostBundleName?: string, observerCallback?: Callback): void; + +function on(type: 'formRemove', observerCallback: Callback): void; +function on(type: 'formRemove', hostBundleName: string, observerCallback: Callback): void; +function off(type: 'formRemove', hostBundleName?: string, observerCallback?: Callback): void; + +function on(type: 'notifyVisible', observerCallback: Callback>): void; +function on( + type: 'notifyVisible', + hostBundleName: string, + observerCallback: Callback> + ): void; +function off( + type: 'notifyVisible', + hostBundleName?: string, + observerCallback?: Callback> + ): void; + +function on(type: 'notifyInvisible', observerCallback: Callback>): void; +function on( + type: 'notifyInvisible', + hostBundleName: string, + observerCallback: Callback>, + ): void; +function off( + type: 'notifyInvisible', + hostBundleName?: string, + observerCallback?: Callback> + ): void; +``` + + +**适配指导** + +已使用相关接口开发的应用工程,需要对接口进行适配。从OpenHarmony 4.0.9.5版本起,相关接口使用应注意入参顺序的调整,将callback作为最后一个参数进行接口调用。 + +**示例:** +```js +import formObserver from @ohos.app.form.formObserver.d.ts; + +let bundleName = 'ohos.samples.FormApplication'; +let callback = function(data) { + console.log('a new form added, data: ${JSON.stringify(data)'); +} + +formHost.on('formAdd', callback); +formHost.on('formAdd', bundleName, callback); +``` \ No newline at end of file