• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.app.form.formObserver (formObserver)(系统接口)
2
3formObserver模块提供了卡片监听方相关接口的能力,包括对同一用户下安装的卡片新增、删除、可见性变化事件的订阅和取消订阅,获取正在运行的卡片信息等。
4
5> **说明:**
6>
7> 本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8> 本模块接口均为系统接口。
9
10## 导入模块
11
12```ts
13import { formObserver } from '@kit.FormKit';
14```
15
16## on('formAdd')
17
18 on(type: 'formAdd', observerCallback: Callback<formInfo.RunningFormInfo>): void
19
20订阅卡片新增事件。使用callback异步回调,返回当前新增卡片的信息。
21
22**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
23
24**系统能力:** SystemCapability.Ability.Form
25
26**参数:**
27
28| 参数名 | 类型    | 必填 | 说明    |
29| ------ | ------ | ---- | ------- |
30| type | string | 是   | 填写'formAdd',表示卡片新增事件。 |
31| observerCallback | Callback<formInfo.[RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)> | 是 | 回调函数。返回当前新增卡片的信息。 |
32
33**错误码:**
34
35以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
36
37| 错误码ID | 错误信息                                                     |
38| -------- | ------------------------------------------------------------ |
39| 202      | The application is not a system application.                                    |
40| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
41
42**示例:**
43
44```ts
45import { formInfo, formObserver } from '@kit.FormKit';
46
47let callback = (data: formInfo.RunningFormInfo) => {
48  console.log(`a new form added, data: ${JSON.stringify(data)}`);
49}
50
51formObserver.on('formAdd', callback);
52```
53
54## on('formAdd')
55
56 on(type: 'formAdd', hostBundleName: string, observerCallback: Callback<formInfo.RunningFormInfo>): void
57
58订阅卡片新增事件。使用callback异步回调,返回指定卡片使用方应用新增卡片的信息。
59
60**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
61
62**系统能力:** SystemCapability.Ability.Form
63
64**参数:**
65
66| 参数名 | 类型    | 必填 | 说明    |
67| ------ | ------ | ---- | ------- |
68| type | string | 是   | 填写'formAdd',表示卡片新增事件。 |
69| hostBundleName | string | 是 | 指定订阅卡片使用方包的bundleName。缺省则订阅所有卡片使用方的卡片新增事件。 |
70| observerCallback | Callback<formInfo.[RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)> | 是 | 回调函数。返回指定卡片使用方应用新增卡片的信息。 |
71
72**错误码:**
73
74以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
75
76| 错误码ID | 错误信息                                                     |
77| -------- | ------------------------------------------------------------ |
78| 202      | The application is not a system application.                                    |
79| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
80
81**示例:**
82
83```ts
84import { formInfo, formObserver } from '@kit.FormKit';
85
86let bundleName: string = 'ohos.samples.FormApplication';
87
88let callback = (data: formInfo.RunningFormInfo) => {
89  console.log(`a new form added, data: ${JSON.stringify(data)}`);
90}
91
92formObserver.on('formAdd', bundleName, callback);
93```
94
95## off('formAdd')
96
97 off(type: "formAdd", hostBundleName?: string, observerCallback?: Callback<formInfo.RunningFormInfo>): void
98
99取消订阅卡片新增事件。使用callback异步回调,返回当前新增卡片的信息。
100
101**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
102
103**系统能力:** SystemCapability.Ability.Form
104
105**参数:**
106
107| 参数名 | 类型    | 必填 | 说明    |
108| ------ | ------ | ---- | ------- |
109| type | string | 是   | 填写'formAdd',表示卡片新增事件。 |
110| hostBundleName | string | 否 | 指定订阅卡片使用方包的bundleName。<br> 填写该参数时,与注册时填写bundleName的on接口对应。<br> 缺省则订阅所有卡片使用方的卡片删除事件,与注册时未填写bundleName的on接口相对应。 |
111| observerCallback | Callback&lt;formInfo.[RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | 否 | 回调函数。返回当前新增卡片信息。缺省时,表示注销对应已注册事件回调。<br> 需与对应on('formAdd')的callback一致。|
112
113**错误码:**
114
115以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
116
117| 错误码ID | 错误信息                                                     |
118| -------- | ------------------------------------------------------------ |
119| 202      | The application is not a system application.                                    |
120| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
121
122**示例:**
123
124```ts
125import { formInfo, formObserver } from '@kit.FormKit';
126
127let bundleName: string = 'ohos.samples.FormApplication';
128
129let callback = (data: formInfo.RunningFormInfo) => {
130  console.log(`a new form added, data: ${JSON.stringify(data)}`);
131}
132
133formObserver.off('formAdd', bundleName, callback);
134
135```
136> **说明:**
137>
138> on('formAdd', callback)与off('formAdd', callback)相对应;
139> on('formAdd', bundleName, callback)与off('formAdd', bundleName, callback)相对应;
140> 订阅(on)只能由自己对应的取消订阅接口(off)取消。
141
142## on('formRemove')
143
144 on(type: 'formRemove', observerCallback: Callback&lt;formInfo.RunningFormInfo&gt;): void
145
146订阅卡片删除事件。使用callback异步回调,返回当前删除卡片的信息。
147
148**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
149
150**系统能力:** SystemCapability.Ability.Form
151
152**参数:**
153
154| 参数名 | 类型    | 必填 | 说明    |
155| ------ | ------ | ---- | ------- |
156| type | string | 是   | 填写'formRemove',表示卡片删除事件。 |
157| observerCallback | Callback&lt;formInfo.[RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | 是 | 回调函数。返回当前删除卡片的信息。 |
158
159**错误码:**
160
161以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
162
163| 错误码ID | 错误信息                                                     |
164| -------- | ------------------------------------------------------------ |
165| 202      | The application is not a system application.                                    |
166| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
167
168**示例:**
169
170```ts
171import { formInfo, formObserver } from '@kit.FormKit';
172
173let callback = (data: formInfo.RunningFormInfo) => {
174  console.log(`form deleted, data: ${JSON.stringify(data)}`);
175}
176
177formObserver.on('formRemove', callback);
178```
179
180## on('formRemove')
181
182 on(type: 'formRemove', hostBundleName: string, observerCallback: Callback&lt;formInfo.RunningFormInfo&gt;): void
183
184订阅卡片删除事件。使用callback异步回调,返回指定卡片使用方应用被删除卡片的信息。
185
186**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
187
188**系统能力:** SystemCapability.Ability.Form
189
190**参数:**
191
192| 参数名 | 类型    | 必填 | 说明    |
193| ------ | ------ | ---- | ------- |
194| type | string | 是   | 填写'formRemove',表示卡片删除事件。 |
195| hostBundleName | string | 是 | 指定订阅卡片使用方包的bundleName。缺省则订阅所有卡片使用方的卡片删除事件。 |
196| observerCallback | Callback&lt;formInfo.[RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | 是 | 回调函数。返回指定卡片使用方应用被删除卡片的信息。 |
197
198**错误码:**
199
200以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
201
202| 错误码ID | 错误信息                                                     |
203| -------- | ------------------------------------------------------------ |
204| 202      | The application is not a system application.                                    |
205| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
206
207**示例:**
208
209```ts
210import { formInfo, formObserver } from '@kit.FormKit';
211
212let bundleName: string = 'ohos.samples.FormApplication';
213
214let callback = (data: formInfo.RunningFormInfo) => {
215  console.log(`form deleted, data: ${JSON.stringify(data)}`);
216}
217
218formObserver.on('formRemove', bundleName, callback);
219```
220
221## off('formRemove')
222
223off(type: "formRemove", hostBundleName?: string, observerCallback?: Callback&lt;formInfo.RunningFormInfo&gt;): void
224
225取消订阅卡片删除事件。使用callback异步回调,返回当前删除卡片的信息。
226
227**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
228
229**系统能力:** SystemCapability.Ability.Form
230
231**参数:**
232
233| 参数名 | 类型    | 必填 | 说明    |
234| ------ | ------ | ---- | ------- |
235| type | string | 是   | 填写'formRemove',表示卡片删除事件。 |
236| hostBundleName | string | 否 | 指定订阅卡片使用方包的bundleName。<br> 填写该参数时,与注册时填写bundleName的on接口对应。<br> 缺省则订阅所有卡片使用方的卡片删除事件,与注册时未填写bundleName的on接口相对应。 |
237| observerCallback | Callback&lt;formInfo.[RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | 否 | 回调函数。返回当前删除卡片的信息。缺省时,表示注销对应已注册事件回调。<br> 需与对应on('formRemove')的callback一致。|
238
239**错误码:**
240
241以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
242
243| 错误码ID | 错误信息                                                     |
244| -------- | ------------------------------------------------------------ |
245| 202      | The application is not a system application.                                    |
246| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
247
248**示例:**
249
250```ts
251import { formInfo, formObserver } from '@kit.FormKit';
252
253let bundleName: string = 'ohos.samples.FormApplication';
254
255let callback = (data: formInfo.RunningFormInfo) => {
256  console.log(`a new form added, data: ${JSON.stringify(data)}`);
257}
258
259formObserver.off('formRemove', bundleName, callback);
260```
261> **说明:**
262>
263> on('formRemove', callback)与off('formRemove', callback)相对应;
264> on('formRemove', bundleName, callback)与off('formRemove', bundleName, callback)相对应;
265> 订阅(on)只能由自己对应的取消订阅接口(off)取消。
266
267## on('notifyVisible')
268
269 on(type: 'notifyVisible', observerCallback: Callback&lt;Array&lt;formInfo.RunningFormInfo&gt;&gt;): void
270
271订阅通知卡片可见的事件。使用callback异步回调。
272
273​触发通知卡片可见场景为:调用[notifyVisibleForms](js-apis-app-form-formHost-sys.md#notifyvisibleforms)接口通知对应卡片可见性变更为可见状态。
274
275**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
276
277**系统能力:** SystemCapability.Ability.Form
278
279**参数:**
280
281| 参数名     | 类型                                                         | 必填 | 说明                                                         |
282| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
283| type       | string                                                       | 是   | 仅允许填写'notifyVisible',表示订阅通知卡片可见的事件。      |
284| observerCallback   | Callback &lt;Array&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt;&gt; | 是   | 回调函数。返回订阅该事件的卡片信息列表。            |
285
286**错误码:**
287
288以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
289
290| 错误码ID | 错误信息                                                     |
291| -------- | ------------------------------------------------------------ |
292| 202      | The application is not a system application.                                    |
293| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
294
295**示例:**
296
297```ts
298import { formInfo, formObserver } from '@kit.FormKit';
299
300let callback = (data: formInfo.RunningFormInfo[]) => {
301  console.log(`form change visibility, data: ${JSON.stringify(data)}`);
302}
303
304formObserver.on('notifyVisible', callback);
305
306```
307
308## on('notifyVisible')
309
310 on(type: 'notifyVisible', hostBundleName: string, observerCallback: Callback&lt;Array&lt;formInfo.RunningFormInfo&gt;&gt;): void
311
312订阅通知卡片可见的事件。使用callback异步回调。
313
314​触发通知卡片可见场景为:调用[notifyVisibleForms](js-apis-app-form-formHost-sys.md#notifyvisibleforms)接口通知对应卡片可见性变更为可见状态。
315
316**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
317
318**系统能力:** SystemCapability.Ability.Form
319
320**参数:**
321
322| 参数名     | 类型                                                         | 必填 | 说明                                                         |
323| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
324| type       | string                                                       | 是   | 仅允许填写'notifyVisible',表示订阅通知卡片可见的事件。      |
325| hostBundleName | string                                                       | 是   | 指定卡片使用方的bundleName,用于订阅卡片在该使用方的可见状态变更事件。 |
326| observerCallback   | Callback &lt;Array&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt;&gt; | 是   | 回调函数。返回订阅该事件的卡片信息列表。            |
327
328**错误码:**
329
330以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
331
332| 错误码ID | 错误信息                                                     |
333| -------- | ------------------------------------------------------------ |
334| 202      | The application is not a system application.                                    |
335| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
336
337
338**示例:**
339
340```ts
341import { formInfo, formObserver } from '@kit.FormKit';
342
343let bundleName: string = 'ohos.samples.FormApplication';
344
345let callback = (data: formInfo.RunningFormInfo[]) => {
346  console.log(`form change visibility, data: ${JSON.stringify(data)}`);
347}
348
349formObserver.on('notifyVisible', bundleName, callback);
350```
351
352## off('notifyVisible')
353
354 off(type: "notifyVisible", hostBundleName?: string, observerCallback?: Callback&lt;Array&lt;formInfo.RunningFormInfo&gt;&gt;): void
355
356取消订阅通知卡片可见的事件。使用callback异步回调。
357
358**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
359
360**系统能力:** SystemCapability.Ability.Form
361
362**参数:**
363
364| 参数名     | 类型                                                         | 必填 | 说明                                                         |
365| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
366| type       | string                                                       | 是   | 仅允许填写'notifyVisible',表示取消订阅通知卡片为可见的事件。 |
367| hostBundleName | string                                                       | 否   | 指定卡片使用方的bundleName,用于订阅卡片在该使用方的可见状态变更事件。<br> 填写该参数时,与注册时填写bundleName的on接口对应。 |
368| observerCallback   | Callback &lt;Array&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt;&gt; | 否   | 回调函数。返回取消订阅该事件的卡片信息列表。缺省时,表示注销对应已注册订阅的回调。<br> 需与对应on('notifyVisible')的callback一致。 |
369
370**错误码:**
371
372以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
373
374| 错误码ID | 错误信息                                                     |
375| -------- | ------------------------------------------------------------ |
376| 202      | The application is not a system application.                                    |
377| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
378
379**示例:**
380
381```ts
382import { formInfo, formObserver } from '@kit.FormKit';
383
384let bundleName: string = 'ohos.samples.FormApplication';
385
386let callback = (data: formInfo.RunningFormInfo[]) => {
387  console.log(`form change visibility, data: ${JSON.stringify(data)}`);
388}
389
390formObserver.off('notifyVisible', bundleName, callback);
391```
392
393> **说明:**
394>
395> on('notifyVisible', callback)与off('notifyVisible', callback)相对应;
396> on('notifyVisible', bundleName, callback)与off('notifyVisible', bundleName, callback)相对应;
397> 订阅(on)只能由自己对应的取消订阅接口(off)取消。
398
399## on('notifyInvisible')
400
401 on(type: 'notifyInvisible', observerCallback: Callback&lt;Array&lt;formInfo.RunningFormInfo&gt;>): void
402
403订阅通知卡片不可见的事件。使用callback异步回调。
404
405​触发通知卡片不可见场景为:调用[notifyInvisibleForms](js-apis-app-form-formHost-sys.md#notifyinvisibleforms)接口通知对应卡片可见性变更为不可见状态。
406
407**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
408
409**系统能力:** SystemCapability.Ability.Form
410
411**参数:**
412
413| 参数名     | 类型                                                         | 必填 | 说明                                                         |
414| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
415| type       | string                                                       | 是   | 仅允许填写'notifyInvisible',表示订阅卡片不可见的事件。      |
416| observerCallback   | Callback &lt;Array&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt;&gt; | 是   | 回调函数。返回订阅通知卡片不可见的卡片信息列表。          |
417
418**错误码:**
419
420以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
421
422| 错误码ID | 错误信息                                                     |
423| -------- | ------------------------------------------------------------ |
424| 202      | The application is not a system application.                                    |
425| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
426
427**示例:**
428
429```ts
430import { formInfo, formObserver } from '@kit.FormKit';
431
432let callback = (data: formInfo.RunningFormInfo[]) => {
433  console.log(`form change invisibility, data: ${JSON.stringify(data)}`);
434}
435
436formObserver.on('notifyInvisible', callback);
437```
438
439
440## on('notifyInvisible')
441
442 on(type: 'notifyInvisible', hostBundleName: string, observerCallback: Callback&lt;Array&lt;formInfo.RunningFormInfo&gt;>): void
443
444订阅通知卡片不可见的事件。使用callback异步回调。
445
446​触发通知卡片不可见场景为:调用[notifyInvisibleForms](js-apis-app-form-formHost-sys.md#notifyinvisibleforms)接口通知对应卡片可见性变更为不可见状态。
447
448**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
449
450**系统能力:** SystemCapability.Ability.Form
451
452**参数:**
453
454| 参数名     | 类型                                                         | 必填 | 说明                                                         |
455| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
456| type       | string                                                       | 是   | 仅允许填写'notifyInvisible',表示订阅卡片不可见的事件。      |
457| hostBundleName | string                                                       | 是   | 指定卡片使用方的bundleName,用于订阅卡片在该使用方的可见状态变更事件。 |
458| observerCallback   | Callback &lt;Array&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt;&gt; | 是   | 回调函数。返回订阅通知卡片不可见的卡片信息列表。          |
459
460**错误码:**
461
462以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
463
464| 错误码ID | 错误信息                                                     |
465| -------- | ------------------------------------------------------------ |
466| 202      | The application is not a system application.                                    |
467| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
468
469**示例:**
470
471```ts
472import { formInfo, formObserver } from '@kit.FormKit';
473
474let bundleName: string = 'ohos.samples.FormApplication';
475
476let callback = (data: formInfo.RunningFormInfo[]) => {
477  console.log(`form change invisibility, data: ${JSON.stringify(data)}`);
478}
479
480formObserver.on('notifyInvisible', bundleName, callback);
481```
482
483## off('notifyInvisible')
484
485 off(type: "notifyInvisible", hostBundleName?: string, observerCallback?: Callback&lt;Array&lt;formInfo.RunningFormInfo>&gt;): void
486
487取消订阅通知卡片不可见事件。使用callback异步回调。
488
489**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
490
491**系统能力:** SystemCapability.Ability.Form
492
493**参数:**
494
495| 参数名     | 类型                                                         | 必填 | 说明                                                         |
496| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
497| type       | string                                                       | 是   | 仅允许填写'notifyInvisible',表示卡片可见性变更为不可见。    |
498| hostBundleName | string                                                       | 否   | 指定卡片使用方的bundleName,用于订阅卡片在该使用方的可见状态变更事件。<br> 填写该参数时,与注册时填写bundleName的on接口对应。<br>  |
499| observerCallback   | Callback &lt;Array&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt;&gt; | 否   | 回调函数。返回取消订阅通知卡片不可见的卡片信息列表。缺省时,表示注销对应已注册事件回调。<br/> 需与对应on('notifyInvisible')的callback一致。 |
500
501**错误码:**
502
503以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
504
505| 错误码ID | 错误信息                                                     |
506| -------- | ------------------------------------------------------------ |
507| 202      | The application is not a system application.                                    |
508| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
509
510**示例:**
511
512```ts
513import { formInfo, formObserver } from '@kit.FormKit';
514
515let bundleName: string = 'ohos.samples.FormApplication';
516
517let callback = (data: formInfo.RunningFormInfo[]) => {
518  console.log(`form change invisibility, data: ${JSON.stringify(data)}`);
519}
520
521formObserver.off('notifyInvisible', bundleName, callback);
522```
523
524> **说明:**
525>
526> on('notifyInvisible', callback)与off('notifyInvisible', callback)相对应;
527> on('notifyInvisible', bundleName, callback)与off('notifyInvisible', bundleName, callback)相对应;
528> 订阅(on)只能由自己对应的取消订阅接口(off)取消。
529
530
531## getRunningFormInfos
532
533getRunningFormInfos(callback: AsyncCallback&lt;Array&lt;formInfo.RunningFormInfo&gt;&gt;, hostBundleName?: string): void
534
535获取设备上正在运行的所有非临时卡片信息。使用callback异步回调。
536
537**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
538
539**系统能力:** SystemCapability.Ability.Form
540
541**参数:**
542
543| 参数名 | 类型    | 必填 | 说明    |
544| ------ | ------ | ---- | ------- |
545| callback | AsyncCallback&lt;Array&lt;formInfo.[RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt;&gt; | 是 | 回调函数。获取设备上正在运行的所有非临时卡片信息。当前卡片信息成功,error为undefined,data为查询到的卡片信息。|
546| hostBundleName | string | 否 |  指定要查询的卡片使用方名称,指定后会仅返回该卡片使用方下正在运行的非临时卡片信息。 <br> 缺省时,返回设备上所有正在运行的非临时卡片信息。 |
547
548**错误码:**
549
550以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[卡片错误码](errorcode-form.md)。
551
552| 错误码ID | 错误信息 |
553| -------- | -------- |
554| 201      | Permissions denied.                                          |
555| 202      | The application is not a system application.                                    |
556| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
557| 16500050 | IPC connection error.                            |
558| 16500060 | Service connection error. |
559
560**示例:**
561
562```ts
563import { formInfo, formObserver } from '@kit.FormKit';
564import { BusinessError } from '@kit.BasicServicesKit';
565
566try {
567  formObserver.getRunningFormInfos((error: BusinessError, data: formInfo.RunningFormInfo[]) => {
568    if (error) {
569      console.error(`error, code: ${error.code}, message: ${error.message}`);
570    } else {
571      console.log(`formObserver getRunningFormInfos, data: ${JSON.stringify(data)}`);
572    }
573  }, 'com.example.ohos.formjsdemo');
574} catch(error) {
575  console.error(`catch error, code: ${(error as BusinessError).code}, message: ${(error as BusinessError).message}`);
576}
577```
578
579## getRunningFormInfos<sup>11+</sup>
580
581getRunningFormInfos(callback: AsyncCallback&lt;Array&lt;formInfo.RunningFormInfo&gt;&gt;, isUnusedIncluded: boolean, hostBundleName?: string): void
582
583获取设备上正在运行的所有非临时卡片信息。使用callback异步回调。
584
585**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
586
587**系统能力:** SystemCapability.Ability.Form
588
589**参数:**
590
591| 参数名 | 类型    | 必填 | 说明    |
592| ------ | ------ | ---- | ------- |
593| callback | AsyncCallback&lt;Array&lt;formInfo.[RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt;&gt; | 是 |  回调函数。获取设备上正在运行的所有非临时卡片信息。当获取成功时,回调中的error为undefined,data为查询到的卡片信息。|
594| isUnusedIncluded | boolean | 是 |  是否包含未使用的卡片。 |
595| hostBundleName | string | 否 |  指定要查询的卡片使用方名称,指定后会仅返回该卡片使用方下正在运行的非临时卡片信息。 <br> 缺省时,返回设备上所有正在运行的非临时卡片信息。 |
596
597**错误码:**
598
599以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[卡片错误码](errorcode-form.md)。
600
601| 错误码ID | 错误信息 |
602| -------- | -------- |
603| 201      | Permissions denied.                                          |
604| 202      | The application is not a system application.                                    |
605| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
606| 16500050 | IPC connection error.                            |
607| 16500060 | Service connection error. |
608
609**示例:**
610
611```ts
612import { formInfo, formObserver } from '@kit.FormKit';
613import { BusinessError } from '@kit.BasicServicesKit';
614
615try {
616  formObserver.getRunningFormInfos((error: BusinessError, data: formInfo.RunningFormInfo[]) => {
617    if (error) {
618      console.error(`error, code: ${error.code}, message: ${error.message}`);
619    } else {
620      console.log(`formObserver getRunningFormInfos, data: ${JSON.stringify(data)}`);
621    }
622  }, true, 'com.example.ohos.formjsdemo');
623} catch(error) {
624  console.error(`catch error, code: ${(error as BusinessError).code}, message: ${(error as BusinessError).message}`);
625}
626```
627
628## getRunningFormInfos
629
630getRunningFormInfos(hostBundleName?: string):  Promise&lt;Array&lt;formInfo.RunningFormInfo&gt;&gt;
631
632获取设备上正在运行的所有非临时卡片信息。使用Promise异步回调。
633
634**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
635
636**系统能力:** SystemCapability.Ability.Form
637
638**参数:**
639
640| 参数名 | 类型    | 必填 | 说明    |
641| ------ | ------ | ---- | ------- |
642| hostBundleName | string | 否 |  指定要查询的卡片使用方名称,指定后会仅返回该卡片使用方下正在运行的非临时卡片信息。 <br> 缺省时,返回设备上所有正在运行的非临时卡片信息。 |
643
644**返回值:**
645
646| 类型                                                         | 说明                                |
647| :----------------------------------------------------------- | :---------------------------------- |
648| Promise&lt;Array&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt;&gt; | Promise对象。返回设备上正在运行的所有非临时卡片信息。 |
649
650**错误码:**
651
652以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[卡片错误码](errorcode-form.md)。
653
654| 错误码ID | 错误信息 |
655| -------- | -------- |
656| 201      | Permissions denied.                                          |
657| 202      | The application is not a system application.                                    |
658| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
659| 16500050 | IPC connection error.                            |
660| 16500060 | Service connection error. |
661
662**示例:**
663
664```ts
665import { formInfo, formObserver } from '@kit.FormKit';
666import { BusinessError } from '@kit.BasicServicesKit';
667
668try {
669  formObserver.getRunningFormInfos('com.example.ohos.formjsdemo').then((data: formInfo.RunningFormInfo[]) => {
670    console.log(`formObserver getRunningFormInfos, data: ${JSON.stringify(data)}`);
671  }).catch((error: BusinessError) => {
672    console.error(`error, code: ${error.code}, message: ${error.message}`);
673  });
674} catch(error) {
675  console.error(`catch error, code: ${(error as BusinessError).code}, message: ${(error as BusinessError).message}`);
676}
677```
678
679## getRunningFormInfos<sup>11+</sup>
680
681getRunningFormInfos(isUnusedIncluded: boolean, hostBundleName?: string):  Promise&lt;Array&lt;formInfo.RunningFormInfo&gt;&gt;
682
683获取设备上正在运行的所有非临时卡片信息。使用Promise异步回调。
684
685**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
686
687**系统能力:** SystemCapability.Ability.Form
688
689**参数:**
690
691| 参数名 | 类型    | 必填 | 说明    |
692| ------ | ------ | ---- | ------- |
693| isUnusedIncluded | boolean | 是 |  是否包含未使用的卡片。 |
694| hostBundleName | string | 否 |  指定要查询的卡片使用方名称,指定后会仅返回该卡片使用方下正在运行的非临时卡片信息。 <br> 缺省时,返回设备上所有正在运行的非临时卡片信息。 |
695
696**返回值:**
697
698| 类型                                                         | 说明                                |
699| :----------------------------------------------------------- | :---------------------------------- |
700| Promise&lt;Array&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt;&gt; | Promise对象。返回设备上正在运行的所有非临时卡片信息。 |
701
702**错误码:**
703
704以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[卡片错误码](errorcode-form.md)。
705
706| 错误码ID | 错误信息 |
707| -------- | -------- |
708| 201      | Permissions denied.                                          |
709| 202      | The application is not a system application.                                    |
710| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
711| 16500050 | IPC connection error.                            |
712| 16500060 | Service connection error. |
713
714**示例:**
715
716```ts
717import { formInfo, formObserver } from '@kit.FormKit';
718import { BusinessError } from '@kit.BasicServicesKit';
719
720try {
721  formObserver.getRunningFormInfos(true, 'com.example.ohos.formjsdemo').then((data: formInfo.RunningFormInfo[]) => {
722    console.log(`formObserver getRunningFormInfos, data: ${JSON.stringify(data)}`);
723  }).catch((error: BusinessError) => {
724    console.error(`error, code: ${error.code}, message: ${error.message}`);
725  });
726} catch(error) {
727  console.error(`catch error, code: ${(error as BusinessError).code}, message: ${(error as BusinessError).message}`);
728}
729```
730
731## getRunningFormInfosByFilter
732
733getRunningFormInfosByFilter(formProviderFilter: formInfo.FormProviderFilter): Promise&lt;Array&lt;formInfo.RunningFormInfo&gt;&gt;
734
735根据提供方信息查询已添加的卡片信息列表。使用Promise异步回调。
736
737**模型约束:** 此接口仅可在Stage模型下使用。
738
739**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
740
741**系统能力:** SystemCapability.Ability.Form
742
743**参数:**
744
745| 参数名      | 类型            | 必填 | 说明                             |
746| ----------- | --------------- | ---- | -------------------------------- |
747| formProviderFilter     | [formInfo.FormProviderFilter](js-apis-app-form-formInfo-sys.md#formproviderfilter10) | 是   | 卡片提供方应用信息。 |
748
749**返回值:**
750
751| 类型                | 说明                      |
752| ------------------- | ------------------------- |
753| Promise&lt;Array&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt;&gt; | Promise对象。返回已添加的卡片信息列表。 |
754
755**错误码:**
756
757以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[卡片错误码](errorcode-form.md)。
758
759| 错误码ID | 错误信息 |
760| -------- | -------- |
761| 201 | Permissions denied. |
762| 202 | The application is not a system application. |
763| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
764| 16500050 | IPC connection error. |
765| 16500100 | Failed to obtain the configuration information. |
766| 16501000  | An internal functional error occurred. |
767
768
769```ts
770import { formInfo, formObserver } from '@kit.FormKit';
771import { BusinessError } from '@kit.BasicServicesKit';
772
773let formInstanceFilter: formInfo.FormProviderFilter = {
774  bundleName: "com.example.formprovide",
775  abilityName: "EntryFormAbility",
776  formName: "widget",
777  moduleName: "entry"
778}
779try {
780  formObserver.getRunningFormInfosByFilter(formInstanceFilter).then((data: formInfo.RunningFormInfo[]) => {
781    console.info('formObserver getRunningFormInfosByFilter success, data:' + JSON.stringify(data));
782  }).catch((error: BusinessError) => {
783    console.error(`error, code: ${error.code}, message: ${error.message}`);
784  });
785} catch(error) {
786  console.error(`catch error, code: ${(error as BusinessError).code}, message: ${(error as BusinessError).message}`);
787}
788```
789
790## getRunningFormInfosByFilter
791
792getRunningFormInfosByFilter(formProviderFilter: formInfo.FormProviderFilter, callback: AsyncCallback&lt;Array&lt;formInfo.RunningFormInfo&gt;&gt;): void
793
794根据提供方信息查询已添加的卡片信息列表。使用callback异步回调。
795
796**模型约束:** 此接口仅可在Stage模型下使用。
797
798**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
799
800**系统能力:** SystemCapability.Ability.Form
801
802**参数:**
803
804| 参数名      | 类型            | 必填 | 说明                             |
805| ----------- | --------------- | ---- | -------------------------------- |
806| formProviderFilter     | [formInfo.FormProviderFilter](js-apis-app-form-formInfo-sys.md#formproviderfilter10) | 是   | 卡片提供方应用信息。 |
807| callback | AsyncCallback&lt;Array&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt;&gt; | 是 | 回调函数。返回已添加的卡片信息列表。error为undefined,data为查询到的使用方列表信息;否则为错误对象。 |
808
809**错误码:**
810
811以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[卡片错误码](errorcode-form.md)。
812
813| 错误码ID | 错误信息 |
814| -------- | -------- |
815| 201 | Permissions denied. |
816| 202 | The application is not a system application. |
817| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
818| 16500050 | IPC connection error. |
819| 16500100 | Failed to obtain the configuration information. |
820| 16501000  | An internal functional error occurred. |
821
822**示例:**
823
824```ts
825import { formInfo, formObserver } from '@kit.FormKit';
826import { BusinessError } from '@kit.BasicServicesKit';
827
828let formInstanceFilter: formInfo.FormProviderFilter = {
829  bundleName: "com.example.formprovide",
830  abilityName: "EntryFormAbility",
831  formName: "widget",
832  moduleName: "entry"
833}
834try {
835  formObserver.getRunningFormInfosByFilter(formInstanceFilter,(error: BusinessError, data: formInfo.RunningFormInfo[]) => {
836    if (error) {
837      console.error(`error, code: ${error.code}, message: ${error.message}`);
838    } else {
839      console.log(`formObserver getRunningFormInfosByFilter, data: ${JSON.stringify(data)}`);
840    }
841  });
842} catch(error) {
843  console.error(`catch error, code: ${(error as BusinessError).code}, message: ${(error as BusinessError).message}`);
844}
845```
846
847## getRunningFormInfoById
848
849getRunningFormInfoById(formId: string): Promise&lt;formInfo.RunningFormInfo&gt;
850
851根据formId查询已添加的卡片信息。使用Promise异步回调。
852
853**模型约束:** 此接口仅可在Stage模型下使用。
854
855**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
856
857**系统能力:** SystemCapability.Ability.Form
858
859**参数:**
860
861| 参数名      | 类型            | 必填 | 说明                             |
862| ----------- | --------------- | ---- | -------------------------------- |
863| formId     | string | 是   | 卡片标识。 |
864
865**返回值:**
866
867| 类型                | 说明                      |
868| ------------------- | ------------------------- |
869| Promise&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | Promise对象。返回已添加的卡片信息。 |
870
871**错误码:**
872
873以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[卡片错误码](errorcode-form.md)。
874
875| 错误码ID | 错误信息 |
876| -------- | -------- |
877| 201 | Permissions denied. |
878| 202 | The application is not a system application. |
879| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
880| 16500050 | IPC connection error. |
881| 16500100 | Failed to obtain the configuration information. |
882| 16501000  | An internal functional error occurred. |
883
884**示例:**
885
886```ts
887import { formInfo, formObserver } from '@kit.FormKit';
888import { BusinessError } from '@kit.BasicServicesKit';
889
890let formId: string = '12400633174999288';
891try {
892  formObserver.getRunningFormInfoById(formId).then((data: formInfo.RunningFormInfo) => {
893    console.info('formObserver getRunningFormInfoById success, data:' + JSON.stringify(data));
894  }).catch((error: BusinessError) => {
895    console.error(`error, code: ${error.code}, message: ${error.message}`);
896  });
897} catch(error) {
898  console.error(`catch error, code: ${(error as BusinessError).code}, message: ${(error as BusinessError).message}`);
899}
900```
901
902## getRunningFormInfoById<sup>11+</sup>
903
904getRunningFormInfoById(formId: string, isUnusedIncluded: boolean): Promise&lt;formInfo.RunningFormInfo&gt;
905
906根据formId查询卡片已添加的卡片信息。使用Promise异步回调。
907
908**模型约束:** 此接口仅可在Stage模型下使用。
909
910**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
911
912**系统能力:** SystemCapability.Ability.Form
913
914**参数:**
915
916| 参数名      | 类型            | 必填 | 说明                             |
917| ----------- | --------------- | ---- | -------------------------------- |
918| formId     | string | 是   | 卡片标识。 |
919| isUnusedIncluded     | boolean | 是   | 是否包含未使用的卡片。 |
920
921**返回值:**
922
923| 类型                | 说明                      |
924| ------------------- | ------------------------- |
925| Promise&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | Promise对象。返回已添加的卡片信息。 |
926
927**错误码:**
928
929以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[卡片错误码](errorcode-form.md)。
930
931| 错误码ID | 错误信息 |
932| -------- | -------- |
933| 201      | Permissions denied.                             |
934| 202      | The application is not a system application.                       |
935| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
936| 16500050 | IPC connection error. |
937| 16500100 | Failed to obtain the configuration information. |
938| 16501000  | An internal functional error occurred. |
939
940**示例:**
941
942```ts
943import { formInfo, formObserver } from '@kit.FormKit';
944import { BusinessError } from '@kit.BasicServicesKit';
945
946let formId: string = '12400633174999288';
947try {
948  formObserver.getRunningFormInfoById(formId, true).then((data: formInfo.RunningFormInfo) => {
949    console.info('formObserver getRunningFormInfoById success, data:' + JSON.stringify(data));
950  }).catch((error: BusinessError) => {
951    console.error(`error, code: ${error.code}, message: ${error.message}`);
952  });
953} catch(error) {
954  console.error(`catch error, code: ${(error as BusinessError).code}, message: ${(error as BusinessError).message}`);
955}
956```
957
958## getRunningFormInfoById
959
960getRunningFormInfoById(formId: string, callback: AsyncCallback&lt;formInfo.RunningFormInfo&gt;): void
961
962根据提供方信息查询已添加的卡片信息。使用callback异步回调。
963
964**模型约束:** 此接口仅可在Stage模型下使用。
965
966**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
967
968**系统能力:** SystemCapability.Ability.Form
969
970**参数:**
971
972| 参数名      | 类型            | 必填 | 说明                             |
973| ----------- | --------------- | ---- | -------------------------------- |
974| formId     | string | 是   | 卡片标识。 |
975| callback | AsyncCallback&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | 是 | 回调函数。返回已添加的卡片信息。error为undefined,data为查询到的使用方列表信息;否则为错误对象。 |
976
977**错误码:**
978
979以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[卡片错误码](errorcode-form.md)。
980
981| 错误码ID | 错误信息 |
982| -------- | -------- |
983| 201 | Permissions denied. |
984| 202 | The application is not a system application. |
985| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
986| 16500050 | IPC connection error. |
987| 16500100 | Failed to obtain the configuration information. |
988| 16501000  | An internal functional error occurred. |
989
990**示例:**
991
992```ts
993import { formInfo, formObserver } from '@kit.FormKit';
994import { BusinessError } from '@kit.BasicServicesKit';
995
996let formId: string = '12400633174999288';
997try {
998  formObserver.getRunningFormInfoById(formId,(error: BusinessError, data: formInfo.RunningFormInfo) => {
999    if (error) {
1000      console.error(`error, code: ${error.code}, message: ${error.message}`);
1001    } else {
1002      console.log(`formObserver getRunningFormInfoById, data: ${JSON.stringify(data)}`);
1003    }
1004  });
1005} catch(error) {
1006  console.error(`catch error, code: ${(error as BusinessError).code}, message: ${(error as BusinessError).message}`);
1007}
1008```
1009
1010## getRunningFormInfoById<sup>11+</sup>
1011
1012getRunningFormInfoById(formId: string, isUnusedIncluded: boolean, callback: AsyncCallback&lt;formInfo.RunningFormInfo&gt;): void
1013
1014根据卡片标识formId,查询已添加的卡片信息。使用callback异步回调。
1015
1016**模型约束:** 此接口仅可在Stage模型下使用。
1017
1018**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
1019
1020**系统能力:** SystemCapability.Ability.Form
1021
1022**参数:**
1023
1024| 参数名      | 类型            | 必填 | 说明                             |
1025| ----------- | --------------- | ---- | -------------------------------- |
1026| formId     | string | 是   | 卡片标识。 |
1027| isUnusedIncluded     | boolean | 是   | 是否包含未使用的卡片。 |
1028| callback | AsyncCallback&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | 是 | 回调函数。返回已添加的卡片信息。error为undefined,data为查询到的使用方列表信息;否则为错误对象。 |
1029
1030**错误码:**
1031
1032以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[卡片错误码](errorcode-form.md)。
1033
1034| 错误码ID | 错误信息 |
1035| -------- | -------- |
1036| 201      | Permissions denied.                             |
1037| 202      | The application is not a system application.                       |
1038| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
1039| 16500050 | IPC connection error. |
1040| 16500100 | Failed to obtain the configuration information. |
1041| 16501000  | An internal functional error occurred. |
1042
1043**示例:**
1044
1045```ts
1046import { formInfo, formObserver } from '@kit.FormKit';
1047import { BusinessError } from '@kit.BasicServicesKit';
1048
1049let formId: string = '12400633174999288';
1050try {
1051  formObserver.getRunningFormInfoById(formId, true, (error: BusinessError, data: formInfo.RunningFormInfo) => {
1052    if (error) {
1053      console.error(`error, code: ${error.code}, message: ${error.message}`);
1054    } else {
1055      console.log(`formObserver getRunningFormInfoById, data: ${JSON.stringify(data)}`);
1056    }
1057  });
1058} catch(error) {
1059  console.error(`catch error, code: ${(error as BusinessError).code}, message: ${(error as BusinessError).message}`);
1060}
1061```
1062
1063## on('router')<sup>11+</sup>
1064
1065 on(type: 'router', observerCallback: Callback&lt;formInfo.RunningFormInfo&gt;): void
1066
1067订阅卡片router事件。使用callback异步回调,返回触发router事件的卡片信息。
1068
1069**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
1070
1071**系统能力:** SystemCapability.Ability.Form
1072
1073**参数:**
1074
1075| 参数名           | 类型                                     | 必填 | 说明                                      |
1076| ---------------- | ---------------------------------------- | ---- | ----------------------------------------- |
1077| type             | string                                   | 是   | 填写'router',表示订阅卡片的router事件。          |
1078| observerCallback | Callback&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | 是   | 回调函数。返回触发router事件的卡片信息。 |
1079
1080**错误码:**
1081
1082以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
1083
1084| 错误码ID | 错误信息 |
1085| -------- | -------- |
1086| 202 | The application is not a system application. |
1087| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
1088
1089**示例:**
1090
1091```ts
1092import { formInfo, formObserver } from '@kit.FormKit';
1093
1094let callback = (data: formInfo.RunningFormInfo) => {
1095  console.log('Router event listening in registered form.' + JSON.stringify(data));
1096};
1097formObserver.on('router', callback);
1098```
1099
1100## on('router')<sup>11+</sup>
1101
1102 on(type: 'router', hostBundleName: string, observerCallback: Callback&lt;formInfo.RunningFormInfo&gt;): void
1103
1104订阅指定卡片使用方的卡片router事件。使用callback异步回调,返回触发router事件的卡片信息。
1105
1106**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
1107
1108**系统能力:** SystemCapability.Ability.Form
1109
1110**参数:**
1111
1112| 参数名           | 类型                                     | 必填 | 说明                                                         |
1113| ---------------- | ---------------------------------------- | ---- | ------------------------------------------------------------ |
1114| type             | string                                   | 是   | 填写'router',表示订阅卡片的router事件。                             |
1115| hostBundleName   | string                                   | 是   | 指定卡片使用方的bundleName。缺省则订阅所有卡片使用方的卡片的router事件。 |
1116| observerCallback | Callback&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | 是   | 回调函数。返回触发router事件的卡片信息。                    |
1117
1118**错误码:**
1119
1120以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
1121
1122| 错误码ID | 错误信息 |
1123| -------- | -------- |
1124| 202 | The application is not a system application. |
1125| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
1126
1127**示例:**
1128
1129```ts
1130import { formInfo, formObserver } from '@kit.FormKit';
1131
1132let hostBundleName: string = 'ohos.samples.FormApplication';
1133let callback = (data: formInfo.RunningFormInfo) => {
1134  console.log('Router event listening in registered form.' + JSON.stringify(data));
1135};
1136formObserver.on('router', hostBundleName, callback);
1137```
1138
1139## off('router')<sup>11+</sup>
1140
1141 off(type: "router", hostBundleName?: string, observerCallback?: Callback&lt;formInfo.RunningFormInfo&gt;): void
1142
1143取消订阅卡片router事件。使用callback异步回调,返回触发router事件的卡片信息。
1144
1145**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
1146
1147**系统能力:** SystemCapability.Ability.Form
1148
1149**参数:**
1150
1151| 参数名           | 类型                                     | 必填 | 说明                                                         |
1152| ---------------- | ---------------------------------------- | ---- | ------------------------------------------------------------ |
1153| type             | string                                   | 是   | 填写'router',表示取消订阅卡片的router事件。                             |
1154| hostBundleName   | string                                   | 否   | 指定订阅卡片使用方包的bundleName。<br>填写该参数时,与注册时填写bundleName的on接口对应。<br>缺省则订阅所有卡片使用方点击router类型卡片的事件,与注册时未填写bundleName的on接口相对应。 |
1155| observerCallback | Callback&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | 否   | 回调函数。返回触发router事件的卡片信息。缺省时,表示注销对应bundleName下已注册事件回调。<br>需与对应on('router')的callback一致。 |
1156
1157**错误码:**
1158
1159以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
1160
1161| 错误码ID | 错误信息 |
1162| -------- | -------- |
1163| 202 | The application is not a system application. |
1164| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
1165
1166**示例:**
1167
1168```ts
1169import { formInfo, formObserver } from '@kit.FormKit';
1170
1171let hostBundleName: string = 'ohos.samples.FormApplication';
1172let callback = (data: formInfo.RunningFormInfo) => {
1173  console.log('Unregister form router event Listening.' + JSON.stringify(data));
1174};
1175formObserver.off('router', hostBundleName, callback);
1176```
1177
1178## on('message')<sup>11+</sup>
1179
1180 on(type: 'message', observerCallback: Callback&lt;formInfo.RunningFormInfo&gt;): void
1181
1182订阅卡片message事件。使用callback异步回调,返回触发message事件的卡片信息。
1183
1184**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
1185
1186**系统能力:** SystemCapability.Ability.Form
1187
1188**参数:**
1189
1190| 参数名           | 类型                                     | 必填 | 说明                                      |
1191| ---------------- | ---------------------------------------- | ---- | ----------------------------------------- |
1192| type             | string                                   | 是   | 填写'message',表示订阅卡片的message事件。         |
1193| observerCallback | Callback&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | 是   | 回调函数。返回触发message事件的卡片信息。 |
1194
1195**错误码:**
1196
1197以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
1198
1199| 错误码ID | 错误信息 |
1200| -------- | -------- |
1201| 202 | The application is not a system application. |
1202| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
1203
1204**示例:**
1205
1206```ts
1207import { formInfo, formObserver } from '@kit.FormKit';
1208
1209let callback = (data: formInfo.RunningFormInfo) => {
1210  console.log('Message event listening in registered form.' + JSON.stringify(data));
1211};
1212formObserver.on('message', callback);
1213```
1214
1215## on('message')<sup>11+</sup>
1216
1217 on(type: 'message', hostBundleName: string, observerCallback: Callback&lt;formInfo.RunningFormInfo&gt;): void
1218
1219订阅指定卡片使用方的卡片message事件。使用callback异步回调,返回触发message事件的卡片信息。
1220
1221**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
1222
1223**系统能力:** SystemCapability.Ability.Form
1224
1225**参数:**
1226
1227| 参数名           | 类型                                     | 必填 | 说明                                                         |
1228| ---------------- | ---------------------------------------- | ---- | ------------------------------------------------------------ |
1229| type             | string                                   | 是   | 填写'message',表示订阅卡片的message事件。                            |
1230| hostBundleName   | string                                   | 是   | 指定卡片使用方的bundleName。缺省则订阅所有卡片使用方的卡片的message事件。 |
1231| observerCallback | Callback&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | 是   | 回调函数。返回触发message事件的卡片的信息。                    |
1232
1233**错误码:**
1234
1235以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
1236
1237| 错误码ID | 错误信息 |
1238| -------- | -------- |
1239| 202 | The application is not a system application. |
1240| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
1241
1242**示例:**
1243
1244```ts
1245import { formInfo, formObserver } from '@kit.FormKit';
1246
1247let hostBundleName: string = 'ohos.samples.FormApplication';
1248let callback = (data: formInfo.RunningFormInfo) => {
1249  console.log('Message event listening in registered form.' + JSON.stringify(data));
1250};
1251formObserver.on('message', hostBundleName, callback);
1252```
1253
1254## off('message')<sup>11+</sup>
1255
1256 off(type: "message", hostBundleName?: string, observerCallback?: Callback&lt;formInfo.RunningFormInfo&gt;): void
1257
1258取消订阅卡片message事件。使用callback异步回调,返回触发message事件的卡片的信息。
1259
1260**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
1261
1262**系统能力:** SystemCapability.Ability.Form
1263
1264**参数:**
1265
1266| 参数名           | 类型                                     | 必填 | 说明                                                         |
1267| ---------------- | ---------------------------------------- | ---- | ------------------------------------------------------------ |
1268| type             | string                                   | 是   | 填写'message',表示取消订阅卡片的message事件。                         |
1269| hostBundleName   | string                                   | 否   | 指定订阅卡片使用方包的bundleName。<br>填写该参数时,与注册时填写bundleName的on接口对应。<br>缺省则取消订阅所有卡片使用方的点击事件,与注册时未填写bundleName的on接口相对应。 |
1270| observerCallback | Callback&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | 否   | 回调函数。返回触发message事件的卡片的信息。缺省时,表示注销对应已注册事件回调。<br>需与对应on('message')的callback一致。 |
1271
1272**错误码:**
1273
1274以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
1275
1276| 错误码ID | 错误信息 |
1277| -------- | -------- |
1278| 202 | The application is not a system application. |
1279| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
1280
1281**示例:**
1282
1283```ts
1284import { formInfo, formObserver } from '@kit.FormKit';
1285
1286let hostBundleName: string = 'ohos.samples.FormApplication';
1287let callback = (data: formInfo.RunningFormInfo) => {
1288  console.log('Unregister form Message event Listening.' + JSON.stringify(data));
1289};
1290formObserver.off('message', hostBundleName, callback);
1291```
1292
1293## on('call')<sup>11+</sup>
1294
1295 on(type: 'call', observerCallback: Callback&lt;formInfo.RunningFormInfo&gt;): void
1296
1297订阅卡片call事件。使用callback异步回调,返回触发call事件的卡片信息。
1298
1299**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
1300
1301**系统能力:** SystemCapability.Ability.Form
1302
1303**参数:**
1304
1305| 参数名           | 类型                                     | 必填 | 说明                                      |
1306| ---------------- | ---------------------------------------- | ---- | ----------------------------------------- |
1307| type             | string                                   | 是   | 填写'call',表示订阅卡片的call事件。            |
1308| observerCallback | Callback&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | 是   | 回调函数。返回触发call事件的卡片信息。 |
1309
1310**错误码:**
1311
1312以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
1313
1314| 错误码ID | 错误信息 |
1315| -------- | -------- |
1316| 202 | The application is not a system application. |
1317| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
1318
1319**示例:**
1320
1321```ts
1322import { formInfo, formObserver } from '@kit.FormKit';
1323
1324let callback = (data: formInfo.RunningFormInfo) => {
1325  console.log('Call event listening in registered form.' + JSON.stringify(data));
1326};
1327formObserver.on('call', callback);
1328```
1329
1330## on('call')<sup>11+</sup>
1331
1332 on(type: 'call', hostBundleName: string, observerCallback: Callback&lt;formInfo.RunningFormInfo&gt;): void
1333
1334订阅指定卡片使用方的卡片call事件。使用callback异步回调,返回触发call事件的卡片信息。
1335
1336**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
1337
1338**系统能力:** SystemCapability.Ability.Form
1339
1340**参数:**
1341
1342| 参数名           | 类型                                     | 必填 | 说明                                                         |
1343| ---------------- | ---------------------------------------- | ---- | ------------------------------------------------------------ |
1344| type             | string                                   | 是   | 填写'call',表示订阅卡片的call事件。                               |
1345| hostBundleName   | string                                   | 是   | 指定卡片使用方的bundleName。缺省则订阅所有卡片使用方的卡片的call事件。 |
1346| observerCallback | Callback&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | 是   | 回调函数。返回触发call事件的卡片信息。                    |
1347
1348**错误码:**
1349
1350以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
1351
1352| 错误码ID | 错误信息 |
1353| -------- | -------- |
1354| 202 | The application is not a system application. |
1355| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
1356
1357**示例:**
1358
1359```ts
1360import { formInfo, formObserver } from '@kit.FormKit';
1361
1362let hostBundleName: string = 'ohos.samples.FormApplication';
1363let callback = (data: formInfo.RunningFormInfo) => {
1364  console.log('Call event listening in registered form.' + JSON.stringify(data));
1365};
1366formObserver.on('call', hostBundleName, callback);
1367```
1368
1369## off('call')<sup>11+</sup>
1370
1371 off(type: "call", hostBundleName?: string, observerCallback?: Callback&lt;formInfo.RunningFormInfo&gt;): void
1372
1373取消订阅卡片call事件。使用callback异步回调,返回触发call事件的卡片信息。
1374
1375**需要权限:** ohos.permission.OBSERVE_FORM_RUNNING
1376
1377**系统能力:** SystemCapability.Ability.Form
1378
1379**参数:**
1380
1381| 参数名           | 类型                                     | 必填 | 说明                                                         |
1382| ---------------- | ---------------------------------------- | ---- | ------------------------------------------------------------ |
1383| type             | string                                   | 是   | 填写'call',表示取消订阅卡片的call事件。                           |
1384| hostBundleName   | string                                   | 否   | 指定订阅卡片使用方包的bundleName。<br>填写该参数时,与注册时填写bundleName的on接口对应。<br>缺省则取消订阅所有卡片使用方的点击事件,与注册时未填写bundleName的on接口相对应。 |
1385| observerCallback | Callback&lt;[formInfo.RunningFormInfo](js-apis-app-form-formInfo-sys.md#runningforminfo10)&gt; | 否   | 回调函数。返回触发call事件的卡片信息。缺省时,表示注销对应已注册事件回调。<br>需与对应on('call')的callback一致。 |
1386
1387**错误码:**
1388
1389以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
1390
1391| 错误码ID | 错误信息 |
1392| -------- | -------- |
1393| 202 | The application is not a system application. |
1394| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. |
1395
1396**示例:**
1397
1398```ts
1399import { formInfo, formObserver } from '@kit.FormKit';
1400
1401let hostBundleName: string = 'ohos.samples.FormApplication';
1402let callback = (data: formInfo.RunningFormInfo) => {
1403  console.log('Unregister form Call event Listening.' + JSON.stringify(data));
1404};
1405formObserver.off('call', hostBundleName, callback);
1406```