js-apis-formhost.md 28.0 KB
Newer Older
L
liweifeng 已提交
1 2
# FormHost

Y
yuyaozhi 已提交
3 4
FormHost模块提供了卡片使用方相关接口的能力,包括删除、释放、请求更新卡片,发送通知到指定卡片,获取卡片信息、状态等。

Y
yuyaozhi 已提交
5 6
> **说明:**
> 
L
liweifeng 已提交
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
> 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

## 导入模块

```
import formHost from '@ohos.application.formHost';
```

## 权限

ohos.permission.REQUIRE_FORM

ohos.permission.GET_BUNDLE_INFO_PRIVILEGED

## deleteForm

deleteForm(formId: string, callback: AsyncCallback<void>): void;

删除指定的卡片。调用此方法后,应用程序将无法使用该卡片,卡片管理器服务不再保留有关该卡片的信息。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Y
yangzk 已提交
33 34 35 36
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formId | string | 是   | 卡片标识 |
| callback | AsyncCallback<void> | 是 | callback形式返回结果 |
L
liweifeng 已提交
37 38 39 40 41 42

**示例:**

  ```js
  var formId = "12400633174999288";
  formHost.deleteForm(formId, (error, data) => {
L
liweifeng 已提交
43 44
      if (error.code) {
          console.log('formHost deleteForm, error:' + JSON.stringify(error));
L
liweifeng 已提交
45 46 47 48 49 50 51 52 53 54
      }
  });
  ```

## deleteForm

deleteForm(formId: string): Promise<void>;

删除指定的卡片。调用此方法后,应用程序将无法使用该卡片,卡片管理器服务不再保留有关该卡片的信息。

L
liweifeng 已提交
55 56 57 58
**系统能力:**

SystemCapability.Ability.Form

L
liweifeng 已提交
59 60 61 62 63 64
**参数:**

  | 参数名 | 类型    | 必填 | 说明    |
  | ------ | ------ | ---- | ------- |
  | formId | string | 是   | 卡片标识 |

L
liweifeng 已提交
65
**返回值:**
L
liweifeng 已提交
66

L
liweifeng 已提交
67 68 69
  | 类型 | 说明 |
  | -------- | -------- |
  | Promise<void> | 返回一个Promise,包含接口的结果 |
L
liweifeng 已提交
70 71 72 73 74

**参数:**

  ```js
  var formId = "12400633174999288";
L
liweifeng 已提交
75 76 77
  formHost.deleteForm(formId).then(() => {
      console.log('formHost deleteForm success');
  }).catch((error) => {
Y
yangzk 已提交
78
      console.log('formHost deleteForm, error:' + JSON.stringify(error));
L
liweifeng 已提交
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
  });
  ```

## releaseForm

releaseForm(formId: string, callback: AsyncCallback<void>): void;

释放指定的卡片。调用此方法后,应用程序将无法使用该卡片,但卡片管理器服务仍然保留有关该卡片的缓存信息和存储信息。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Y
yangzk 已提交
94 95 96 97
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formId | string | 是   | 卡片标识 |
| callback | AsyncCallback<void> | 是 | callback形式返回结果 |
L
liweifeng 已提交
98 99 100 101 102 103

**示例:**

  ```js
  var formId = "12400633174999288";
  formHost.releaseForm(formId, (error, data) => {
L
liweifeng 已提交
104 105
      if (error.code) {
          console.log('formHost releaseForm, error:' + JSON.stringify(error));
L
liweifeng 已提交
106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121
      }
  });
  ```

## releaseForm

releaseForm(formId: string, isReleaseCache: boolean, callback: AsyncCallback<void>): void;

释放指定的卡片。调用此方法后,应用程序将无法使用该卡片,卡片管理器服务保留有关该卡片的存储信息,可以选择是否保留缓存信息。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Y
yangzk 已提交
122 123 124 125 126
| 参数名         | 类型     | 必填 | 说明        |
| -------------- | ------  | ---- | ----------- |
| formId         | string  | 是   | 卡片标识     |
| isReleaseCache | boolean | 是   | 是否释放缓存 |
| callback | AsyncCallback<void> | 是 | callback形式返回结果 |
L
liweifeng 已提交
127 128 129 130 131 132

**示例:**

  ```js
  var formId = "12400633174999288";
  formHost.releaseForm(formId, true, (error, data) => {
L
liweifeng 已提交
133 134
      if (error.code) {
          console.log('formHost releaseForm, error:' + JSON.stringify(error));
L
liweifeng 已提交
135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155
      }
  });
  ```

## releaseForm

releaseForm(formId: string, isReleaseCache?: boolean): Promise<void>;

释放指定的卡片。调用此方法后,应用程序将无法使用该卡片,卡片管理器服务保留有关该卡片的存储信息,可以选择是否保留缓存信息。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

  | 参数名         | 类型     | 必填 | 说明        |
  | -------------- | ------  | ---- | ----------- |
  | formId         | string  | 是   | 卡片标识     |
  | isReleaseCache | boolean | 否   | 是否释放缓存 |

L
liweifeng 已提交
156 157 158 159 160
**返回值:**

  | 类型 | 说明 |
  | -------- | -------- |
  | Promise<void> | 返回一个Promise,包含接口的结果 |
L
liweifeng 已提交
161 162 163 164 165

**示例:**

  ```js
  var formId = "12400633174999288";
L
liweifeng 已提交
166 167 168
  formHost.releaseForm(formId, true).then(() => {
      console.log('formHost releaseForm success');
  }).catch((error) => {
Y
yangzk 已提交
169
      console.log('formHost releaseForm, error:' + JSON.stringify(error));
L
liweifeng 已提交
170 171 172 173 174 175 176 177 178 179 180 181 182 183 184
  });
  ```

## requestForm

requestForm(formId: string, callback: AsyncCallback<void>): void;

请求卡片更新。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Y
yangzk 已提交
185 186 187 188
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formId | string | 是   | 卡片标识 |
| callback | AsyncCallback<void> | 是 | callback形式返回结果 |
L
liweifeng 已提交
189 190 191 192 193 194

**示例:**

  ```js
  var formId = "12400633174999288";
  formHost.requestForm(formId, (error, data) => {
L
liweifeng 已提交
195 196
      if (error.code) {
          console.log('formHost requestForm, error:' + JSON.stringify(error));
L
liweifeng 已提交
197 198 199 200 201 202 203 204 205 206
      }
  });
  ```

## requestForm

requestForm(formId: string): Promise<void>;

请求卡片更新。

L
liweifeng 已提交
207 208 209 210
**系统能力:**

SystemCapability.Ability.Form

L
liweifeng 已提交
211 212 213 214 215 216
**参数:**

  | 参数名 | 类型    | 必填 | 说明    |
  | ------ | ------ | ---- | ------- |
  | formId | string | 是   | 卡片标识 |

L
liweifeng 已提交
217
**返回值:**
L
liweifeng 已提交
218

L
liweifeng 已提交
219 220 221
  | 类型 | 说明 |
  | -------- | -------- |
  | Promise<void> | 返回一个Promise,包含接口的结果 |
L
liweifeng 已提交
222 223 224 225 226

**示例:**

  ```js
  var formId = "12400633174999288";
L
liweifeng 已提交
227 228 229
  formHost.requestForm(formId).then(() => {
      console.log('formHost requestForm success');
  }).catch((error) => {
Y
yangzk 已提交
230
      console.log('formHost requestForm, error:' + JSON.stringify(error));
L
liweifeng 已提交
231 232 233 234 235 236 237 238 239 240 241 242 243 244 245
  });
  ```

## castTempForm

castTempForm(formId: string, callback: AsyncCallback<void>): void;

将指定的临时卡片转换为普通卡片。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Y
yangzk 已提交
246 247 248 249
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formId | string | 是   | 卡片标识 |
| callback | AsyncCallback<void> | 是 | callback形式返回结果 |
L
liweifeng 已提交
250 251 252 253 254 255

**示例:**

  ```js
  var formId = "12400633174999288";
  formHost.castTempForm(formId, (error, data) => {
L
liweifeng 已提交
256 257
      if (error.code) {
          console.log('formHost castTempForm, error:' + JSON.stringify(error));
L
liweifeng 已提交
258 259 260 261 262 263 264 265 266 267
      }
  });
  ```

## castTempForm

castTempForm(formId: string): Promise<void>;

将指定的临时卡片转换为普通卡片。

L
liweifeng 已提交
268 269 270 271
**系统能力:**

SystemCapability.Ability.Form

L
liweifeng 已提交
272 273 274 275 276 277
**参数:**

  | 参数名 | 类型    | 必填 | 说明    |
  | ------ | ------ | ---- | ------- |
  | formId | string | 是   | 卡片标识 |

L
liweifeng 已提交
278
**返回值:**
L
liweifeng 已提交
279

L
liweifeng 已提交
280 281 282
  | 类型 | 说明 |
  | -------- | -------- |
  | Promise<void> | 返回一个Promise,包含接口的结果 |
L
liweifeng 已提交
283 284 285 286 287

**示例:**

  ```js
  var formId = "12400633174999288";
L
liweifeng 已提交
288 289 290
  formHost.castTempForm(formId).then(() => {
      console.log('formHost castTempForm success');
  }).catch((error) => {
Y
yangzk 已提交
291
      console.log('formHost castTempForm, error:' + JSON.stringify(error));
L
liweifeng 已提交
292 293 294 295 296
  });
  ```

## notifyVisibleForms

Y
yangzk 已提交
297
notifyVisibleForms(formIds: Array<string>, callback: AsyncCallback<void>): void;
L
liweifeng 已提交
298 299 300 301 302 303 304 305 306

向卡片框架发送通知以使指定的卡片可见。该方法调用成功后,会调用onVisibilityChange通知卡片提供方。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Y
yangzk 已提交
307 308 309 310
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formIds  | Array<string>       | 是   | 卡片标识列表         |
| callback | AsyncCallback<void> | 是 | callback形式返回结果 |
L
liweifeng 已提交
311 312 313 314

**示例:**

  ```js
Y
yuyaozhi 已提交
315
  var formId = ["12400633174999288"];
L
liweifeng 已提交
316
  formHost.notifyVisibleForms(formId, (error, data) => {
L
liweifeng 已提交
317 318
      if (error.code) {
          console.log('formHost notifyVisibleForms, error:' + JSON.stringify(error));
L
liweifeng 已提交
319 320 321 322 323 324
      }
  });
  ```

## notifyVisibleForms

Y
yangzk 已提交
325
notifyVisibleForms(formIds: Array<string>): Promise<void>;
L
liweifeng 已提交
326 327 328

向卡片框架发送通知以使指定的卡片可见。该方法调用成功后,会调用onVisibilityChange通知卡片提供方。

L
liweifeng 已提交
329 330 331 332
**系统能力:**

SystemCapability.Ability.Form

L
liweifeng 已提交
333 334
**参数:**

Y
yangzk 已提交
335 336 337
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formIds | Array<string> | 是   | 卡片标识列表 |
L
liweifeng 已提交
338

L
liweifeng 已提交
339
**返回值:**
L
liweifeng 已提交
340

L
liweifeng 已提交
341 342 343
  | 类型 | 说明 |
  | -------- | -------- |
  | Promise<void> | 返回一个Promise,包含接口的结果 |
L
liweifeng 已提交
344 345 346 347

**示例:**

  ```js
Y
yuyaozhi 已提交
348
  var formId = ["12400633174999288"];
L
liweifeng 已提交
349 350 351
  formHost.notifyVisibleForms(formId).then(() => {
      console.log('formHost notifyVisibleForms success');
  }).catch((error) => {
Y
yangzk 已提交
352
      console.log('formHost notifyVisibleForms, error:' + JSON.stringify(error));
L
liweifeng 已提交
353 354 355 356 357
  });
  ```

## notifyInvisibleForms

Y
yangzk 已提交
358
notifyInvisibleForms(formIds: Array<string>, callback: AsyncCallback<void>): void;
L
liweifeng 已提交
359 360 361 362 363 364 365 366 367

向卡片框架发送通知以使指定的卡片不可见。该方法调用成功后,会调用onVisibilityChange通知卡片提供方。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Y
yangzk 已提交
368 369 370 371
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formIds  | Array<string>       | 是   | 卡片标识列表         |
| callback | AsyncCallback<void> | 是 | callback形式返回结果 |
L
liweifeng 已提交
372 373 374 375

**示例:**

  ```js
Y
yuyaozhi 已提交
376
  var formId = ["12400633174999288"];
L
liweifeng 已提交
377
  formHost.notifyInvisibleForms(formId, (error, data) => {
L
liweifeng 已提交
378 379
      if (error.code) {
          console.log('formHost notifyInvisibleForms, error:' + JSON.stringify(error));
L
liweifeng 已提交
380 381 382 383 384 385
      }
  });
  ```

## notifyInvisibleForms

Y
yangzk 已提交
386
notifyInvisibleForms(formIds: Array<string>): Promise<void>;
L
liweifeng 已提交
387 388 389

向卡片框架发送通知以使指定的卡片不可见。该方法调用成功后,会调用onVisibilityChange通知卡片提供方。

L
liweifeng 已提交
390 391 392 393
**系统能力:**

SystemCapability.Ability.Form

L
liweifeng 已提交
394 395
**参数:**

Y
yangzk 已提交
396 397 398
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formIds | Array<string> | 是   | 卡片标识列表 |
L
liweifeng 已提交
399

L
liweifeng 已提交
400
**返回值:**
L
liweifeng 已提交
401

L
liweifeng 已提交
402 403 404
  | 类型 | 说明 |
  | -------- | -------- |
  | Promise<void> | 返回一个Promise,包含接口的结果 |
L
liweifeng 已提交
405 406 407 408

**示例:**

  ```js
Y
yuyaozhi 已提交
409
  var formId = ["12400633174999288"];
L
liweifeng 已提交
410 411 412
  formHost.notifyInvisibleForms(formId).then(() => {
      console.log('formHost notifyInvisibleForms success');
  }).catch((error) => {
Y
yangzk 已提交
413
      console.log('formHost notifyInvisibleForms, error:' + JSON.stringify(error));
L
liweifeng 已提交
414 415 416 417 418
  });
  ```

## enableFormsUpdate

Y
yangzk 已提交
419
enableFormsUpdate(formIds: Array<string>, callback: AsyncCallback<void>): void;
L
liweifeng 已提交
420 421 422 423 424 425 426 427 428

向卡片框架发送通知以使指定的卡片可以更新。该方法调用成功后,卡片刷新状态设置为使能,卡片可以接收来自卡片提供方的更新。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Y
yangzk 已提交
429 430 431 432
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formIds  | Array<string>       | 是   | 卡片标识列表         |
| callback | AsyncCallback<void> | 是 | callback形式返回结果 |
L
liweifeng 已提交
433 434 435 436

**示例:**

  ```js
Y
yuyaozhi 已提交
437
  var formId = ["12400633174999288"];
L
liweifeng 已提交
438
  formHost.enableFormsUpdate(formId, (error, data) => {
L
liweifeng 已提交
439 440
      if (error.code) {
          console.log('formHost enableFormsUpdate, error:' + JSON.stringify(error));
L
liweifeng 已提交
441 442 443 444 445 446
      }
  });
  ```

## enableFormsUpdate

Y
yangzk 已提交
447
enableFormsUpdate(formIds: Array<string>): Promise<void>;
L
liweifeng 已提交
448 449 450

向卡片框架发送通知以使指定的卡片可以更新。该方法调用成功后,卡片刷新状态设置为使能,卡片可以接收来自卡片提供方的更新。

L
liweifeng 已提交
451 452 453 454
**系统能力:**

SystemCapability.Ability.Form

L
liweifeng 已提交
455 456
**参数:**

Y
yangzk 已提交
457 458 459
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formIds | Array<string> | 是   | 卡片标识列表 |
L
liweifeng 已提交
460

L
liweifeng 已提交
461
**返回值:**
L
liweifeng 已提交
462

L
liweifeng 已提交
463 464 465
  | 类型 | 说明 |
  | -------- | -------- |
  | Promise<void> | 返回一个Promise,包含接口的结果 |
L
liweifeng 已提交
466 467 468 469

**示例:**

  ```js
Y
yuyaozhi 已提交
470
  var formId = ["12400633174999288"];
L
liweifeng 已提交
471 472 473
  formHost.enableFormsUpdate(formId).then(() => {
      console.log('formHost enableFormsUpdate success');
  }).catch((error) => {
Y
yangzk 已提交
474
      console.log('formHost enableFormsUpdate, error:' + JSON.stringify(error));
L
liweifeng 已提交
475 476 477 478 479
  });
  ```

## disableFormsUpdate

Y
yangzk 已提交
480
disableFormsUpdate(formIds: Array<string>, callback: AsyncCallback<void>): void;
L
liweifeng 已提交
481 482 483 484 485 486 487 488 489

向卡片框架发送通知以使指定的卡片不可以更新。该方法调用成功后,卡片刷新状态设置为去使能,卡片不可以接收来自卡片提供方的更新。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Y
yangzk 已提交
490 491 492 493
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formIds  | Array<string>       | 是   | 卡片标识列表         |
| callback | AsyncCallback<void> | 是 | callback形式返回结果 |
L
liweifeng 已提交
494 495 496 497

**示例:**

  ```js
Y
yuyaozhi 已提交
498
  var formId = ["12400633174999288"];
L
liweifeng 已提交
499
  formHost.disableFormsUpdate(formId, (error, data) => {
L
liweifeng 已提交
500 501
      if (error.code) {
          console.log('formHost disableFormsUpdate, error:' + JSON.stringify(error));
L
liweifeng 已提交
502 503 504 505 506 507
      }
  });
  ```

## disableFormsUpdate

Y
yangzk 已提交
508
disableFormsUpdate(formIds: Array<string>): Promise<void>;
L
liweifeng 已提交
509 510 511

向卡片框架发送通知以使指定的卡片不可以更新。该方法调用成功后,卡片刷新状态设置为去使能,卡片不可以接收来自卡片提供方的更新。

L
liweifeng 已提交
512 513 514 515
**系统能力:**

SystemCapability.Ability.Form

L
liweifeng 已提交
516 517
**参数:**

Y
yangzk 已提交
518 519 520
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formIds | Array<string> | 是   | 卡片标识列表 |
L
liweifeng 已提交
521

L
liweifeng 已提交
522
**返回值:**
L
liweifeng 已提交
523

L
liweifeng 已提交
524 525 526
  | 类型 | 说明 |
  | -------- | -------- |
  | Promise<void> | 返回一个Promise,包含接口的结果 |
L
liweifeng 已提交
527 528 529 530

**示例:**

  ```js
Y
yuyaozhi 已提交
531
  var formId = ["12400633174999288"];
L
liweifeng 已提交
532 533 534
  formHost.disableFormsUpdate(formId).then(() => {
      console.log('formHost disableFormsUpdate success');
  }).catch((error) => {
Y
yangzk 已提交
535
      console.log('formHost disableFormsUpdate, error:' + JSON.stringify(error));
L
liweifeng 已提交
536 537 538 539 540 541 542 543 544 545 546 547 548 549 550
  });
  ```

## isSystemReady

isSystemReady(callback: AsyncCallback<void>): void;

检查系统是否准备好。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Y
yangzk 已提交
551 552 553
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| callback | AsyncCallback<void> | 是 | callback形式返回结果 |
L
liweifeng 已提交
554 555 556 557 558 559

**示例:**

  ```js
  var formId = "12400633174999288";
  formHost.isSystemReady((error, data) => {
L
liweifeng 已提交
560 561
      if (error.code) {
          console.log('formHost isSystemReady, error:' + JSON.stringify(error));
L
liweifeng 已提交
562 563 564 565 566 567 568 569 570 571 572 573 574 575
      }
  });
  ```

## isSystemReady

isSystemReady(): Promise<void>;

检查系统是否准备好。

**系统能力:**

SystemCapability.Ability.Form

L
liweifeng 已提交
576 577 578 579 580 581
**返回值:**

  | 类型 | 说明 |
  | -------- | -------- |
  | Promise<void> | 返回一个Promise,包含接口的结果 |

L
liweifeng 已提交
582 583 584 585
**示例:**

  ```js
  var formId = "12400633174999288";
L
liweifeng 已提交
586 587 588
  formHost.isSystemReady().then(() => {
      console.log('formHost isSystemReady success');
  }).catch((error) => {
Y
yangzk 已提交
589
      console.log('formHost isSystemReady, error:' + JSON.stringify(error));
L
liweifeng 已提交
590 591 592 593 594
  });
  ```

## getAllFormsInfo

595
getAllFormsInfo(callback: AsyncCallback<Array<formInfo.FormInfo>>): void;
L
liweifeng 已提交
596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612

获取设备上所有应用提供的卡片信息。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

  | 参数名 | 类型    | 必填 | 说明    |
  | ------ | ------ | ---- | ------- |
  | callback | AsyncCallback<Array<[FormInfo](./js-apis-formInfo.md#forminfo-1)>> | 是 | callback形式返回查询到的卡片信息 |

**示例:**

  ```js
  formHost.getAllFormsInfo((error, data) => {
L
liweifeng 已提交
613 614 615 616
      if (error.code) {
          console.log('formHost getAllFormsInfo, error:' + JSON.stringify(error));
      } else {
          console.log('formHost getAllFormsInfo, data:' + JSON.stringify(data));
L
liweifeng 已提交
617 618 619 620 621 622
      }
  });
  ```

## getAllFormsInfo

623 624
getAllFormsInfo(): Promise<Array<formInfo.FormInfo>>;

L
liweifeng 已提交
625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640

获取设备上所有应用提供的卡片信息。

**系统能力:**

SystemCapability.Ability.Form

**返回值:**

| 类型          | 说明                                |
| :------------ | :---------------------------------- |
| Promise<Array<[FormInfo](./js-apis-formInfo.md#forminfo-1)>> | Promise实例,用于获取异步返回查询到的卡片信息 |

**示例:**

  ```js
L
liweifeng 已提交
641 642 643
  formHost.getAllFormsInfo().then((data) => {
      console.log('formHost getAllFormsInfo data:' + JSON.stringify(data));
  }).catch((error) => {
Y
yangzk 已提交
644
      console.log('formHost getAllFormsInfo, error:' + JSON.stringify(error));
L
liweifeng 已提交
645 646 647 648 649
  });
  ```

## getFormsInfo

650 651
getFormsInfo(bundleName: string, callback: AsyncCallback<Array<formInfo.FormInfo>>): void;

L
liweifeng 已提交
652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668

获取设备上指定应用程序提供的卡片信息。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

  | 参数名 | 类型    | 必填 | 说明    |
  | ------ | ------ | ---- | ------- |
  | bundleName | string | 是 |  要查询的应用程序包名称 |
  | callback | AsyncCallback<Array<[FormInfo](./js-apis-formInfo.md#forminfo-1)>> | 是 | callback形式返回查询到的卡片信息 |

**示例:**

  ```js
Y
yangzk 已提交
669
  formHost.getFormsInfo("com.example.ohos.formjsdemo", (error, data) => {
L
liweifeng 已提交
670 671 672 673
      if (error.code) {
          console.log('formHost getFormsInfo, error:' + JSON.stringify(error));
      } else {
          console.log('formHost getFormsInfo, data:' + JSON.stringify(data));
L
liweifeng 已提交
674 675 676 677 678 679
      }
  });
  ```

## getFormsInfo

680 681
getFormsInfo(bundleName: string, moduleName: string, callback: AsyncCallback<Array<formInfo.FormInfo>>): void;

L
liweifeng 已提交
682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699

获取设备上指定应用程序提供的卡片信息。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

  | 参数名 | 类型    | 必填 | 说明    |
  | ------ | ------ | ---- | ------- |
  | bundleName | string | 是 |  要查询的应用程序包名称 |
  | moduleName | string | 是 |  要查询的模块名称 |
  | callback | AsyncCallback<Array<[FormInfo](./js-apis-formInfo.md#forminfo-1)>> | 是 | callback形式返回查询到的卡片信息 |

**示例:**

  ```js
Y
yangzk 已提交
700
  formHost.getFormsInfo("com.example.ohos.formjsdemo", "entry", (error, data) => {
L
liweifeng 已提交
701 702 703 704
      if (error.code) {
          console.log('formHost getFormsInfo, error:' + JSON.stringify(error));
      } else {
          console.log('formHost getFormsInfo, data:' + JSON.stringify(data));
L
liweifeng 已提交
705 706 707 708 709 710
      }
  });
  ```

## getFormsInfo

711 712
getFormsInfo(bundleName: string, moduleName?: string): Promise<Array<formInfo.FormInfo>>;

L
liweifeng 已提交
713

L
liweifeng 已提交
714
获取设备上指定应用程序提供的卡片信息。
L
liweifeng 已提交
715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735

**系统能力:**

SystemCapability.Ability.Form

**参数:**

  | 参数名 | 类型    | 必填 | 说明    |
  | ------ | ------ | ---- | ------- |
  | bundleName | string | 是 |  要查询的应用程序包名称 |
  | moduleName | string | 否 |  要查询的模块名称 |

**返回值:**

| 类型          | 说明                                |
| :------------ | :---------------------------------- |
| Promise<Array<[FormInfo](./js-apis-formInfo.md#forminfo-1)>> | Promise实例,用于获取异步返回查询到的卡片信息 |

**示例:**

  ```js
L
liweifeng 已提交
736 737 738
  formHost.getFormsInfo("com.example.ohos.formjsdemo", "entry").then((data) => {
      console.log('formHost getFormsInfo, data:' + JSON.stringify(data));
  }).catch((error) => {
Y
yangzk 已提交
739
      console.log('formHost getFormsInfo, error:' + JSON.stringify(error));
L
liweifeng 已提交
740 741 742 743 744 745 746 747 748 749 750 751 752 753 754
  });
  ```

## deleteInvalidForms

deleteInvalidForms(formIds: Array<string>, callback: AsyncCallback<number>): void;

根据列表删除应用程序的无效卡片。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Y
yangzk 已提交
755 756 757 758
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formIds | Array<string> | 是   | 有效卡片标识列表 |
| callback | AsyncCallback<number> | 是 | callback形式返回删除的卡片个数 |
L
liweifeng 已提交
759 760 761 762 763 764

**示例:**

  ```js
  var formIds = new Array("12400633174999288", "12400633174999289");
  formHost.deleteInvalidForms(formIds, (error, data) => {
L
liweifeng 已提交
765 766 767 768
      if (error.code) {
          console.log('formHost deleteInvalidForms, error:' + JSON.stringify(error));
      } else {
          console.log('formHost deleteInvalidForms, data:' + JSON.stringify(data));
L
liweifeng 已提交
769 770 771 772 773 774
      }
  });
  ```

## deleteInvalidForms

775
deleteInvalidForms(formIds: Array<string>): Promise<number>;
L
liweifeng 已提交
776 777 778

根据列表删除应用程序的无效卡片。

L
liweifeng 已提交
779 780 781 782
**系统能力:**

SystemCapability.Ability.Form

L
liweifeng 已提交
783 784
**参数:**

Y
yangzk 已提交
785 786 787
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formIds | Array<string> | 是   | 有效卡片标识列表 |
L
liweifeng 已提交
788 789 790 791 792 793 794 795 796 797 798

**返回值:**

| 类型          | 说明                                |
| :------------ | :---------------------------------- |
| Promise<number> | Promise实例,用于获取异步返回删除的卡片个数 |

**示例:**

  ```js
  var formIds = new Array("12400633174999288", "12400633174999289");
L
liweifeng 已提交
799 800 801
  formHost.deleteInvalidForms(formIds).then((data) => {
      console.log('formHost deleteInvalidForms, data:' + JSON.stringify(data));
  }).catch((error) => {
Y
yangzk 已提交
802
      console.log('formHost deleteInvalidForms, error:' + JSON.stringify(error));
L
liweifeng 已提交
803 804 805 806 807
  });
  ```

## acquireFormState

808
acquireFormState(want: Want, callback: AsyncCallback<formInfo.FormStateInfo>): void;
L
liweifeng 已提交
809 810 811 812 813 814 815 816 817

获取卡片状态

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Z
zengyawen 已提交
818 819
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
ahjxliubao2's avatar
ahjxliubao2 已提交
820
| want | [Want](js-apis-application-Want.md) | 是   | 查询卡片状态时携带的want信息 |
Z
zengyawen 已提交
821
| callback | AsyncCallback<[FormStateInfo](js-apis-formInfo.md#formstateinfo)> | 是 | callback形式返回卡片状态 |
L
liweifeng 已提交
822 823 824 825 826

**示例:**

  ```js
  var want = {
Y
yangzk 已提交
827 828 829 830 831 832 833 834
      "deviceId": "",
      "bundleName": "ohos.samples.FormApplication",
      "abilityName": "FormAbility",
      "parameters": {
          "ohos.extra.param.key.module_name": "entry",
          "ohos.extra.param.key.form_name": "widget",
          "ohos.extra.param.key.form_dimension": 2
      }
L
liweifeng 已提交
835 836
  };
  formHost.acquireFormState(want, (error, data) => {
L
liweifeng 已提交
837 838 839 840
      if (error.code) {
          console.log('formHost acquireFormState, error:' + JSON.stringify(error));
      } else {
          console.log('formHost acquireFormState, data:' + JSON.stringify(data));
L
liweifeng 已提交
841 842 843 844 845 846
      }
  });
  ```

## acquireFormState

847
acquireFormState(want: Want): Promise<formInfo.FormStateInfo>;
L
liweifeng 已提交
848

L
liweifeng 已提交
849
获取卡片状态。
L
liweifeng 已提交
850 851 852

**参数:**

Y
yangzk 已提交
853 854
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
ahjxliubao2's avatar
ahjxliubao2 已提交
855
| want   | [Want](js-apis-application-Want.md) | 是   | 查询卡片状态时携带的want信息 |
L
liweifeng 已提交
856 857 858 859 860

**返回值:**

| 类型          | 说明                                |
| :------------ | :---------------------------------- |
Z
zengyawen 已提交
861
| Promise<[FormStateInfo](js-apis-formInfo.md#formstateinfo)> | Promise实例,用于返回卡片状态 |
L
liweifeng 已提交
862 863 864 865 866 867 868 869 870

**系统能力:**

SystemCapability.Ability.Form

**示例:**

  ```js
  var want = {
Y
yangzk 已提交
871 872 873 874 875 876 877 878
      "deviceId": "",
      "bundleName": "ohos.samples.FormApplication",
      "abilityName": "FormAbility",
      "parameters": {
          "ohos.extra.param.key.module_name": "entry",
          "ohos.extra.param.key.form_name": "widget",
          "ohos.extra.param.key.form_dimension": 2
      }
L
liweifeng 已提交
879
  };
L
liweifeng 已提交
880 881 882
  formHost.acquireFormState(want).then((data) => {
      console.log('formHost acquireFormState, data:' + JSON.stringify(data));
  }).catch((error) => {
Y
yangzk 已提交
883
      console.log('formHost acquireFormState, error:' + JSON.stringify(error));
L
liweifeng 已提交
884 885 886 887 888 889 890
  });
  ```

## on("formUninstall")

on(type: "formUninstall", callback: Callback<string>): void;

L
liweifeng 已提交
891
订阅卡片卸载事件。
L
liweifeng 已提交
892 893 894 895 896 897 898

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Y
yangzk 已提交
899 900 901 902
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| type | string | 是   | 填写"formUninstall",表示卡片卸载事件 |
| callback | Callback<string> | 是 | 需要注册的事件回调方法 |
L
liweifeng 已提交
903 904 905 906

**示例:**

  ```js
Y
yangzk 已提交
907 908 909 910
  let callback = function(formId) {
      console.log('formHost on formUninstall, formId:' + formId);
  }
  formHost.on("formUninstall", callback);
L
liweifeng 已提交
911 912 913 914
  ```

## off("formUninstall")

Y
yangzk 已提交
915
off(type: "formUninstall", callback?: Callback<string>): void;
L
liweifeng 已提交
916

L
liweifeng 已提交
917
取消订阅卡片卸载事件。
L
liweifeng 已提交
918 919 920 921 922 923 924

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Y
yangzk 已提交
925 926 927 928
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| type | string | 是   | 填写"formUninstall",表示卡片卸载事件 |
| callback | Callback<string> | 否 | 需要注销的事件回调方法。缺省时,表示注销所有已注册事件回调 |
L
liweifeng 已提交
929 930 931 932

**示例:**

  ```js
Y
yangzk 已提交
933 934 935 936
  let callback = function(formId) {
      console.log('formHost on formUninstall, formId:' + formId);
  }
  formHost.off("formUninstall", callback);
L
liweifeng 已提交
937 938 939 940 941 942 943 944 945 946 947 948 949 950
  ```

## notifyFormsVisible

notifyFormsVisible(formIds: Array<string>, isVisible: boolean, callback: AsyncCallback<void>): void;

通知卡片是否可见。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Y
yangzk 已提交
951 952 953 954 955
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formIds | Array<string> | 是   | 卡片标识列表 |
| isVisible | boolean | 是   | 是否可见 |
| callback | AsyncCallback<void> | 是 | callback形式返回结果 |
L
liweifeng 已提交
956 957 958 959 960 961

**示例:**

  ```js
  var formIds = new Array("12400633174999288", "12400633174999289");
  formHost.notifyFormsVisible(formIds, true, (error, data) => {
L
liweifeng 已提交
962 963
      if (error.code) {
          console.log('formHost notifyFormsVisible, error:' + JSON.stringify(error));
L
liweifeng 已提交
964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984
      }
  });
  ```

## notifyFormsVisible

notifyFormsVisible(formIds: Array<string>, isVisible: boolean): Promise<void>;

通知卡片是否可见。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

  | 参数名 | 类型    | 必填 | 说明    |
  | ------ | ------ | ---- | ------- |
  | formIds | Array<string> | 是   | 卡片标识列表 |
  | isVisible | boolean | 是   | 是否可见 |

L
liweifeng 已提交
985 986 987 988 989 990
**返回值:**

  | 类型 | 说明 |
  | -------- | -------- |
  | Promise<void> | 返回一个Promise,包含接口的结果 |

L
liweifeng 已提交
991 992 993 994
**示例:**

  ```js
  var formIds = new Array("12400633174999288", "12400633174999289");
L
liweifeng 已提交
995 996 997
  formHost.notifyFormsVisible(formIds, true).then(() => {
      console.log('formHost notifyFormsVisible success');
  }).catch((error) => {
Y
yangzk 已提交
998
      console.log('formHost notifyFormsVisible, error:' + JSON.stringify(error));
L
liweifeng 已提交
999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013
  });
  ```

## notifyFormsEnableUpdate

notifyFormsEnableUpdate(formIds: Array<string>, isEnableUpdate: boolean, callback: AsyncCallback<void>): void;

通知卡片是否启用更新状态。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

Y
yangzk 已提交
1014 1015 1016 1017 1018
| 参数名 | 类型    | 必填 | 说明    |
| ------ | ------ | ---- | ------- |
| formIds | Array<string> | 是   | 卡片标识列表 |
| isEnableUpdate | boolean | 是   | 是否使能更新 |
| callback | AsyncCallback<void> | 是 | callback形式返回结果 |
L
liweifeng 已提交
1019 1020 1021 1022 1023 1024

**示例:**

  ```js
  var formIds = new Array("12400633174999288", "12400633174999289");
  formHost.notifyFormsEnableUpdate(formIds, true, (error, data) => {
L
liweifeng 已提交
1025 1026
      if (error.code) {
          console.log('formHost notifyFormsEnableUpdate, error:' + JSON.stringify(error));
L
liweifeng 已提交
1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047
      }
  });
  ```

## notifyFormsEnableUpdate

notifyFormsEnableUpdate(formIds: Array<string>, isEnableUpdate: boolean): Promise<void>;

通知卡片是否启用更新状态。

**系统能力:**

SystemCapability.Ability.Form

**参数:**

  | 参数名 | 类型    | 必填 | 说明    |
  | ------ | ------ | ---- | ------- |
  | formIds | Array<string> | 是   | 卡片标识列表 |
  | isEnableUpdate | boolean | 是   | 是否使能更新 |

L
liweifeng 已提交
1048 1049 1050 1051 1052 1053
**返回值:**

  | 类型 | 说明 |
  | -------- | -------- |
  | Promise<void> | 返回一个Promise,包含接口的结果 |

L
liweifeng 已提交
1054 1055 1056 1057
**示例:**

  ```js
  var formIds = new Array("12400633174999288", "12400633174999289");
L
liweifeng 已提交
1058 1059 1060
  formHost.notifyFormsEnableUpdate(formIds, true).then(() => {
      console.log('formHost notifyFormsEnableUpdate success');
  }).catch((error) => {
Y
yangzk 已提交
1061
      console.log('formHost notifyFormsEnableUpdate, error:' + JSON.stringify(error));
L
liweifeng 已提交
1062 1063
  });
  ```