harmony 鸿蒙ArkUI Subsystem Changelog
ArkUI Subsystem Changelog
cl.arkui.1 Return Value Type Change of getInspectorTree
Change Impact
The code that uses the getInspectorTree API in versions earlier than OpenHarmony 3.2.10.7 must be adapted.
Key API/Component Changes
The return value of the getInspectorTree API is changed from the string type to the Object type.
Adaptation Guide
Adapt the code that takes the return value of getInspectorTree as a string.The sample code is as follows:
- Before change:
console.info(getInspectorTree())
- After change:
console.info(JSON.stringify(getInspectorTree()))
cl.arkui.2 Deprecation the forceRebuild Attribute of <GridItem>
Change Impact
None. The attribute has no effect.
Key API/Component Changes
Deprecate the forceRebuild attribute of the <GridItem> component.
Adaptation Guide
Delete the code that uses the forceRebuild attribute. This will not affect the functionality of the <GridItem> component.
cl.arkui.3 Plugin Module API Changes
1. API Change in the PluginComponentTemplate Module
Renamed the ability parameter bundleName to more clearly indicate the intended meaning.
You need to adapt your application.
Change Impact
The application developed based on earlier versions must be adapted to the change. Otherwise, build errors will occur.
Key API/Component Changes
- Involved APIs:
interface PluginComponentTemplate { source: string; bundleName: string; }
interface PluginComponentInterface { (value: { template: PluginComponentTemplate; data: any }): PluginComponentAttribute; }
- Before change:
interface PluginComponentTemplate { source: string; ability: string; }
interface PluginComponentInterface {
(value: { template: PluginComponentTemplate; data: any }): PluginComponentAttribute;
}
- After change:
interface PluginComponentTemplate { source: string; bundleName: string; }
interface PluginComponentInterface {
(value: { template: PluginComponentTemplate; data: any }): PluginComponentAttribute;
}
Adaptation Guide
Use the new API. The sample code is as follows:
Before change:
PluginComponent({ template: { source: 'plugincomponent1', ability: 'com.example.plugin' }, data: { 'countDownStartValue': 'new countDownStartValue' } }).size({ width: 500, height: 100 })
After change:
PluginComponent({ template: { source: 'plugincomponent1', bundleName: 'com.example.plugin' }, data: { 'countDownStartValue': 'new countDownStartValue' } }).size({ width: 500, height: 100 })
2. API Change in the pluginComponentManager Module
Renamed the want parameter target to more clearly indicate the intended meaning.
You need to adapt your application.
Change Impact
The application developed based on earlier versions must be adapted to the change. Otherwise, alarms will arise. Though the build may be successful, the API will not work as intended.
Key API/Component Changes
- Involved APIs:
interface PushParameterForStage { owner: Want; target: Want; name: string; data: KVObject; extraData: KVObject; jsonPath?: string; }
function push(param: PushParameterForStage, callback: AsyncCallback<void>): void;
interface RequestParameterForStage { owner: Want; target: Want; name: string; data: KVObject; jsonPath?: string; }
function request(param: RequestParameterForStage, callback: AsyncCallback<RequestCallbackParameters>): void;
- Before change:
interface PushParameterForStage {
owner: Want;
want: Want;
name: string;
data: KVObject;
extraData: KVObject;
jsonPath?: string;
}
function push(param: PushParameterForStage, callback: AsyncCallback<void>): void;
interface RequestParameterForStage {
owner: Want;
want: Want;
name: string;
data: KVObject;
jsonPath?: string;
}
function request(param: RequestParameterForStage, callback: AsyncCallback<RequestCallbackParameters>): void;
- After change:
interface PushParameterForStage {
owner: Want;
target: Want;
name: string;
data: KVObject;
extraData: KVObject;
jsonPath?: string;
}
function push(param: PushParameterForStage, callback: AsyncCallback<void>): void;
interface RequestParameterForStage {
owner: Want;
target: Want;
name: string;
data: KVObject;
jsonPath?: string;
}
function request(param: RequestParameterForStage, callback: AsyncCallback<RequestCallbackParameters>): void;
Adaptation Guide
Use the new API. The sample code is as follows:
- Before change: “`js import pluginComponentManager from ‘@ohos.pluginComponent’
pluginComponentManager.push({ owner:{ bundleName:“com.example.provider”, abilityName:“com.example.provider.MainAbility” }, want: { bundleName: “com.example.provider”, abilityName: “com.example.provider.MainAbility”, }, name: “ets/pages/plugin2.js”, data: { “js”: “ets/pages/plugin.js”, “key_1”: 1111, }, extraData: { “extra_str”: “this is push event” }, jsonPath: “”, }, (err, data) => { console.log(“push_callback:err: ” ,JSON.stringify(err)); console.log(“push_callback:data: ” , JSON.stringify(data)); console.log(“push_callback: push ok!”); } )
pluginComponentManager.request({ owner:{ bundleName:“com.example.provider”, abilityName:“com.example.provider.MainAbility” }, want: { bundleName: “com.example.provider”, abilityName: “ets/pages/plugin2.js”, }, name: “plugintemplate”, data: { “key_1”: “ myapplication plugin component test”, “key_2”: 123456 }, jsonPath: “”, }, (err, data) => { console.log(“request_callback: componentTemplate.ability=” + data.componentTemplate.ability) console.log(“request_callback: componentTemplate.source=” + data.componentTemplate.source) } )
- After change:
```js
import pluginComponentManager from '@ohos.pluginComponent'
pluginComponentManager.push({
owner:{
bundleName:"com.example.provider",
abilityName:"com.example.provider.MainAbility"
},
target: {
bundleName: "com.example.provider",
abilityName: "com.example.provider.MainAbility",
},
name: "ets/pages/plugin2.js",
data: {
"js": "ets/pages/plugin.js",
"key_1": 1111,
},
extraData: {
"extra_str": "this is push event"
},
jsonPath: "",
},
(err, data) => {
console.log("push_callback:err: " ,JSON.stringify(err));
console.log("push_callback:data: " , JSON.stringify(data));
console.log("push_callback: push ok!");
}
)
pluginComponentManager.request({
owner:{
bundleName:"com.example.provider",
abilityName:"com.example.provider.MainAbility"
},
target: {
bundleName: "com.example.provider",
abilityName: "ets/pages/plugin2.js",
},
name: "plugintemplate",
data: {
"key_1": " myapplication plugin component test",
"key_2": 123456
},
jsonPath: "",
},
(err, data) => {
console.log("request_callback: componentTemplate.ability=" + data.componentTemplate.ability)
console.log("request_callback: componentTemplate.source=" + data.componentTemplate.source)
}
)
你可能感兴趣的鸿蒙文章
harmony 鸿蒙Resource Scheduler Subsystem Changelog
harmony 鸿蒙Telephony Subsystem Changelog
harmony 鸿蒙Web Subsystem Changelog
harmony 鸿蒙Ability Framework Changelog
- 所属分类: 后端技术
- 本文标签:
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦