• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.update (升级)
2<!--Kit: Basic Services Kit-->
3<!--Subsystem: Update-->
4<!--Owner: @RainyDay_005; @huangsiping3-->
5<!--Designer: @zhangzhengxue; @jackd320-->
6<!--Tester: @mamba-ting-->
7<!--Adviser: @zhang_yixin13-->
8
9升级范围:升级整个系统,包括内置资源和预置应用,不包括三方应用。
10
11升级类型:SD卡升级、在线升级。
12
13- SD卡升级依赖升级包和SD卡安装。
14
15- 在线升级依赖设备厂商部署的用于管理升级包的服务器。服务器由设备厂商部署,IP由调用者传入,请求的request接口是固定的,由设备厂商开发。
16
17> **说明:**
18>
19> 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
20>
21> 本模块接口为系统接口。
22
23## 导入模块
24
25```js
26import { update } from '@kit.BasicServicesKit';
27```
28
29## update.getOnlineUpdater
30
31getOnlineUpdater(upgradeInfo: UpgradeInfo): Updater
32
33获取在线升级对象。
34
35**系统能力**:SystemCapability.Update.UpdateService
36
37**参数:**
38
39| 参数名         | 类型                          | 必填   | 说明     |
40| ----------- | --------------------------- | ---- | ------ |
41| upgradeInfo | [UpgradeInfo](#upgradeinfo) | 是    | 升级对象信息。 |
42
43**返回值:**
44
45| 类型                  | 说明   |
46| ------------------- | ---- |
47| [Updater](#updater) | 升级对象。 |
48
49**示例:**
50
51```ts
52try {
53      const upgradeInfo: update.UpgradeInfo = {
54        upgradeApp: "com.ohos.ota.updateclient",
55        businessType: {
56          vendor: update.BusinessVendor.PUBLIC,
57          subType: update.BusinessSubType.FIRMWARE
58        }
59      };
60      let updater = update.getOnlineUpdater(upgradeInfo);
61    } catch(error) {
62      console.error(`Fail to get updater error: ${error}`);
63    }
64```
65
66## update.getRestorer
67
68getRestorer(): Restorer
69
70获取恢复出厂设置对象。
71
72**系统能力**:SystemCapability.Update.UpdateService
73
74
75**返回值:**
76
77| 类型                    | 说明     |
78| --------------------- | ------ |
79| [Restorer](#restorer) | 恢复出厂对象。 |
80
81
82**示例:**
83
84```ts
85try {
86  let restorer = update.getRestorer();
87} catch(error) {
88  console.error(`Fail to get restorer: ${error}`);
89}
90```
91
92## update.getLocalUpdater
93
94getLocalUpdater(): LocalUpdater
95
96获取本地升级对象。
97
98**系统能力**:SystemCapability.Update.UpdateService
99
100**返回值:**
101
102| 类型                            | 说明     |
103| ----------------------------- | ------ |
104| [LocalUpdater](#localupdater) | 本地升级对象。 |
105
106
107**示例:**
108
109```ts
110try {
111  let localUpdater = update.getLocalUpdater();
112} catch(error) {
113  console.error(`Fail to get localUpdater error: ${error}`);
114}
115```
116
117## Updater
118
119### checkNewVersion
120
121checkNewVersion(callback: AsyncCallback\<CheckResult>): void
122
123检查新版本信息。使用callback异步回调。
124
125**系统能力**:SystemCapability.Update.UpdateService
126
127**需要权限**:ohos.permission.UPDATE_SYSTEM
128
129**参数:**
130
131| 参数名      | 类型                                       | 必填   | 说明             |
132| -------- | ---------------------------------------- | ---- | -------------- |
133| callback | AsyncCallback\<[CheckResult](#checkresult)> | 是    | 回调函数,返回搜包结果对象。 |
134
135**错误码**:
136
137以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
138
139| 错误码ID       | 错误信息                                                  |
140| -------  | ---------------------------------------------------- |
141| 201      | Permission denied.       |
142| 202      | not system application.  |
143| 11500104 | IPC error.               |
144
145**示例:**
146
147```ts
148import { BusinessError } from '@kit.BasicServicesKit';
149
150updater.checkNewVersion((err: BusinessError, result: update.CheckResult) => {
151      console.log(`checkNewVersion isExistNewVersion  ${result?.isExistNewVersion}`);
152    });
153```
154
155### checkNewVersion
156
157checkNewVersion(): Promise\<CheckResult>
158
159检查新版本信息。使用Promise异步回调。
160
161**系统能力**:SystemCapability.Update.UpdateService
162
163**需要权限**:ohos.permission.UPDATE_SYSTEM
164
165**返回值:**
166
167| 类型                                    | 说明                  |
168| ------------------------------------- | ------------------- |
169| Promise\<[CheckResult](#checkresult)> | Promise对象,返回搜包结果对象。 |
170
171**错误码**:
172
173以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
174
175| 错误码ID       | 错误信息                                                  |
176| -------  | ---------------------------------------------------- |
177| 201      | Permission denied.       |
178| 202      | not system application.  |
179| 11500104 | IPC error.               |
180
181**示例:**
182
183```ts
184import { BusinessError } from '@kit.BasicServicesKit';
185
186updater.checkNewVersion()
187      .then((result: update.CheckResult) => {
188        console.log(`checkNewVersion isExistNewVersion: ${result.isExistNewVersion}`);
189        // 版本摘要信息
190        console.log(`checkNewVersion versionDigestInfo: ${result.newVersionInfo.versionDigestInfo.versionDigest}`);
191      })
192      .catch((err: BusinessError)=>{
193        console.error(`checkNewVersion promise error ${JSON.stringify(err)}`);
194      });
195```
196
197###  getNewVersionInfo
198
199getNewVersionInfo(callback: AsyncCallback\<NewVersionInfo>): void
200
201获取新版本信息。使用callback异步回调。
202
203**系统能力**:SystemCapability.Update.UpdateService
204
205**需要权限**:ohos.permission.UPDATE_SYSTEM
206
207**参数:**
208
209| 参数名      | 类型                                       | 必填   | 说明              |
210| -------- | ---------------------------------------- | ---- | --------------- |
211| callback | AsyncCallback\<[NewVersionInfo](#newversioninfo)> | 是    | 回调函数,返回新版本信息对象。 |
212
213**错误码**:
214
215以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
216
217| 错误码ID       | 错误信息                                                  |
218| -------  | ---------------------------------------------------- |
219| 201      | Permission denied.       |
220| 202      | not system application.  |
221| 11500104 | IPC error.               |
222
223**示例:**
224
225```ts
226import { BusinessError } from '@kit.BasicServicesKit';
227
228updater.getNewVersionInfo((err: BusinessError, info: update.NewVersionInfo) => {
229      console.log(`info displayVersion = ${info?.versionComponents[0].displayVersion}`);
230      console.log(`info innerVersion = ${info?.versionComponents[0].innerVersion}`);
231});
232```
233
234### getNewVersionInfo
235
236getNewVersionInfo(): Promise\<NewVersionInfo>
237
238获取新版本信息。使用Promise异步回调。
239
240**系统能力**:SystemCapability.Update.UpdateService
241
242**需要权限**:ohos.permission.UPDATE_SYSTEM
243
244**返回值:**
245
246| 类型                                       | 说明                   |
247| ---------------------------------------- | -------------------- |
248| Promise\<[NewVersionInfo](#newversioninfo)> | Promise对象,返回新版本信息对象。 |
249
250**错误码**:
251
252以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
253
254| 错误码ID       | 错误信息                                                  |
255| -------  | ---------------------------------------------------- |
256| 201      | Permission denied.       |
257| 202      | not system application.  |
258| 11500104 | IPC error.               |
259
260**示例:**
261
262```ts
263import { BusinessError } from '@kit.BasicServicesKit';
264
265updater.getNewVersionInfo().then((info: update.NewVersionInfo) => {
266    console.log(`info displayVersion = ${info.versionComponents[0].displayVersion}`);
267    console.log(`info innerVersion = ${info.versionComponents[0].innerVersion}`);
268}).catch((err: BusinessError) => {
269    console.error(`getNewVersionInfo promise error ${JSON.stringify(err)}`);
270});
271```
272
273###  getNewVersionDescription
274
275getNewVersionDescription(versionDigestInfo: VersionDigestInfo, descriptionOptions: DescriptionOptions, callback: AsyncCallback\<Array\<ComponentDescription>>): void
276
277获取新版本描述文件。使用callback异步回调。
278
279**系统能力**:SystemCapability.Update.UpdateService
280
281**需要权限**:ohos.permission.UPDATE_SYSTEM
282
283**参数:**
284
285| 参数名                | 类型                                       | 必填   | 说明             |
286| ------------------ | ---------------------------------------- | ---- | -------------- |
287| versionDigestInfo  | [VersionDigestInfo](#versiondigestinfo)  | 是    | 版本摘要信息。         |
288| descriptionOptions | [DescriptionOptions](#descriptionoptions) | 是    | 描述文件选项。        |
289| callback           | AsyncCallback\<Array\<[ComponentDescription](#componentdescription)>> | 是    | 回调函数,返回新版本描述文件。 |
290
291**错误码**:
292
293以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
294
295| 错误码ID       | 错误信息                                                  |
296| -------  | ---------------------------------------------------- |
297| 201      | Permission denied.       |
298| 202      | not system application.  |
299| 401      | Parameter verification failed.    |
300| 11500104 | IPC error.               |
301
302**示例:**
303
304```ts
305import { BusinessError } from '@kit.BasicServicesKit';
306
307// 版本摘要信息
308const versionDigestInfo: update.VersionDigestInfo = {
309  versionDigest: "versionDigest" // 检测结果中的版本摘要信息
310};
311
312// 描述文件选项
313const descriptionOptions: update.DescriptionOptions = {
314  format: update.DescriptionFormat.STANDARD, // 标准格式
315  language: "zh-cn" // 中文
316};
317
318updater.getNewVersionDescription(versionDigestInfo, descriptionOptions).then((info: Array<update.ComponentDescription>)=> {
319  console.log(`getNewVersionDescription promise info ${JSON.stringify(info)}`);
320}).catch((err: BusinessError) => {
321  console.error(`getNewVersionDescription promise error ${JSON.stringify(err)}`);
322});
323```
324
325### getNewVersionDescription
326
327getNewVersionDescription(versionDigestInfo: VersionDigestInfo, descriptionOptions: DescriptionOptions): Promise\<Array\<ComponentDescription>>
328
329获取新版本描述文件。使用Promise异步回调。
330
331**系统能力**:SystemCapability.Update.UpdateService
332
333**需要权限**:ohos.permission.UPDATE_SYSTEM
334
335**参数:**
336
337| 参数名                | 类型                                       | 必填   | 说明     |
338| ------------------ | ---------------------------------------- | ---- | ------ |
339| versionDigestInfo  | [VersionDigestInfo](#versiondigestinfo)  | 是    | 版本摘要信息。 |
340| descriptionOptions | [DescriptionOptions](#descriptionoptions) | 是    | 描述文件选项。 |
341
342**返回值:**
343
344| 类型                                       | 说明                  |
345| ---------------------------------------- | ------------------- |
346| Promise\<Array\<[ComponentDescription](#componentdescription)>> | Promise对象,返回新版本描述文件。 |
347
348**错误码**:
349
350以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
351
352| 错误码ID       | 错误信息                                                  |
353| -------  | ---------------------------------------------------- |
354| 201      | Permission denied.       |
355| 202      | not system application.  |
356| 401      | Parameter verification failed.    |
357| 11500104 | IPC error.               |
358
359**示例:**
360
361```ts
362import { BusinessError } from '@kit.BasicServicesKit';
363
364// 版本摘要信息
365const versionDigestInfo: update.VersionDigestInfo = {
366  versionDigest: "versionDigest" // 检测结果中的版本摘要信息
367};
368
369// 描述文件选项
370const descriptionOptions: update.DescriptionOptions = {
371  format: update.DescriptionFormat.STANDARD, // 标准格式
372  language: "zh-cn" // 中文
373};
374
375updater.getNewVersionDescription(versionDigestInfo, descriptionOptions).then((info: Array<update.ComponentDescription>)=> {
376  console.log(`getNewVersionDescription promise info ${JSON.stringify(info)}`);
377}).catch((err: BusinessError) => {
378  console.error(`getNewVersionDescription promise error ${JSON.stringify(err)}`);
379});
380```
381
382###  getCurrentVersionInfo
383
384getCurrentVersionInfo(callback: AsyncCallback\<CurrentVersionInfo>): void
385
386获取当前版本信息。使用callback异步回调。
387
388**系统能力**:SystemCapability.Update.UpdateService
389
390**需要权限**:ohos.permission.UPDATE_SYSTEM
391
392**参数:**
393
394| 参数名      | 类型                                       | 必填   | 说明               |
395| -------- | ---------------------------------------- | ---- | ---------------- |
396| callback | AsyncCallback\<[CurrentVersionInfo](#currentversioninfo)> | 是    | 回调函数,返回当前版本信息对象。 |
397
398**错误码**:
399
400以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
401
402| 错误码ID       | 错误信息                                                  |
403| -------  | ---------------------------------------------------- |
404| 201      | Permission denied.       |
405| 202      | not system application.  |
406| 11500104 | IPC error.               |
407
408**示例:**
409
410```ts
411import { BusinessError } from '@kit.BasicServicesKit';
412
413updater.getCurrentVersionInfo((err: BusinessError, info: update.CurrentVersionInfo) => {
414  console.log(`info osVersion = ${info?.osVersion}`);
415  console.log(`info deviceName = ${info?.deviceName}`);
416  console.log(`info displayVersion = ${info?.versionComponents[0].displayVersion}`);
417});
418```
419
420### getCurrentVersionInfo
421
422getCurrentVersionInfo(): Promise\<CurrentVersionInfo>
423
424获取当前版本信息。使用Promise异步回调。
425
426**系统能力**:SystemCapability.Update.UpdateService
427
428**需要权限**:ohos.permission.UPDATE_SYSTEM
429
430**返回值:**
431
432| 类型                                       | 说明                  |
433| ---------------------------------------- | ------------------- |
434| Promise\<[CurrentVersionInfo](#currentversioninfo)> | Promise对象,返回当前版本信息对象。 |
435
436**错误码**:
437
438以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
439
440| 错误码ID       | 错误信息                                                  |
441| -------  | ---------------------------------------------------- |
442| 201      | Permission denied.       |
443| 202      | not system application.  |
444| 11500104 | IPC error.               |
445
446**示例:**
447
448```ts
449import { BusinessError } from '@kit.BasicServicesKit';
450
451updater.getCurrentVersionInfo().then((info: update.CurrentVersionInfo) => {
452  console.log(`info osVersion = ${info.osVersion}`);
453  console.log(`info deviceName = ${info.deviceName}`);
454  console.log(`info displayVersion = ${info.versionComponents[0].displayVersion}`);
455}).catch((err: BusinessError) => {
456  console.error(`getCurrentVersionInfo promise error ${JSON.stringify(err)}`);
457});
458```
459
460###  getCurrentVersionDescription
461
462getCurrentVersionDescription(descriptionOptions: DescriptionOptions, callback: AsyncCallback\<Array\<ComponentDescription>>): void
463
464获取当前版本描述文件。使用callback异步回调。
465
466**系统能力**:SystemCapability.Update.UpdateService
467
468**需要权限**:ohos.permission.UPDATE_SYSTEM
469
470**参数:**
471
472| 参数名                | 类型                                       | 必填   | 说明              |
473| ------------------ | ---------------------------------------- | ---- | --------------- |
474| descriptionOptions | [DescriptionOptions](#descriptionoptions) | 是    | 描述文件选项。          |
475| callback           | AsyncCallback\<Array\<[ComponentDescription](#componentdescription)>> | 是    | 回调函数,返回当前版本描述文件。 |
476
477**错误码**:
478
479以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
480
481| 错误码ID       | 错误信息                                                  |
482| -------  | ---------------------------------------------------- |
483| 201      | Permission denied.       |
484| 202      | not system application.  |
485| 401      | Parameter verification failed.    |
486| 11500104 | IPC error.               |
487
488**示例:**
489
490```ts
491// 描述文件选项
492const descriptionOptions: update.DescriptionOptions = {
493  format: update.DescriptionFormat.STANDARD, // 标准格式
494  language: "zh-cn" // 中文
495};
496
497updater.getCurrentVersionDescription(descriptionOptions, (err, info) => {
498  console.log(`getCurrentVersionDescription info ${JSON.stringify(info)}`);
499  console.log(`getCurrentVersionDescription err ${JSON.stringify(err)}`);
500});
501```
502
503### getCurrentVersionDescription
504
505getCurrentVersionDescription(descriptionOptions: DescriptionOptions): Promise\<Array\<ComponentDescription>>
506
507获取当前版本描述文件。使用Promise异步回调。
508
509**系统能力**:SystemCapability.Update.UpdateService
510
511**需要权限**:ohos.permission.UPDATE_SYSTEM
512
513**参数:**
514
515| 参数名                | 类型                                       | 必填   | 说明     |
516| ------------------ | ---------------------------------------- | ---- | ------ |
517| descriptionOptions | [DescriptionOptions](#descriptionoptions) | 是    | 描述文件选项。 |
518
519**返回值:**
520
521| 类型                                       | 说明                   |
522| ---------------------------------------- | -------------------- |
523| Promise\<Array\<[ComponentDescription](#componentdescription)>> | Promise对象,返回当前版本描述文件。 |
524
525**错误码**:
526
527以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
528
529| 错误码ID       | 错误信息                                                  |
530| -------  | ---------------------------------------------------- |
531| 201      | Permission denied.       |
532| 202      | not system application.  |
533| 401      | Parameter verification failed.    |
534| 11500104 | IPC error.               |
535
536**示例:**
537
538```ts
539import { BusinessError } from '@kit.BasicServicesKit';
540// 描述文件选项
541const descriptionOptions: update.DescriptionOptions = {
542  format: update.DescriptionFormat.STANDARD, // 标准格式
543  language: "zh-cn" // 中文
544};
545updater.getCurrentVersionDescription(descriptionOptions).then((info: Array<update.ComponentDescription>) => {
546  console.log(`getCurrentVersionDescription promise info ${JSON.stringify(info)}`);
547}).catch((err: BusinessError) => {
548  console.error(`getCurrentVersionDescription promise error ${JSON.stringify(err)}`);
549});
550```
551
552###  getTaskInfo
553
554getTaskInfo(callback: AsyncCallback\<TaskInfo>): void
555
556获取升级任务信息。使用callback异步回调。
557
558**系统能力**:SystemCapability.Update.UpdateService
559
560**需要权限**:ohos.permission.UPDATE_SYSTEM
561
562**参数:**
563
564| 参数名      | 类型                                    | 必填   | 说明               |
565| -------- | ------------------------------------- | ---- | ---------------- |
566| callback | AsyncCallback\<[TaskInfo](#taskinfo)> | 是    | 回调函数,返回升级任务信息对象。 |
567
568**错误码**:
569
570以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
571
572| 错误码ID       | 错误信息                                                  |
573| -------  | ---------------------------------------------------- |
574| 201      | Permission denied.       |
575| 202      | not system application.  |
576| 11500104 | IPC error.               |
577
578**示例:**
579
580```ts
581import { BusinessError } from '@kit.BasicServicesKit';
582
583updater.getTaskInfo((err: BusinessError, info: update.TaskInfo) => {
584  console.log(`getTaskInfo isexistTask= ${info?.existTask}`);
585});
586```
587
588### getTaskInfo
589
590getTaskInfo(): Promise\<TaskInfo>
591
592获取升级任务信息。使用Promise异步回调。
593
594**系统能力**:SystemCapability.Update.UpdateService
595
596**需要权限**:ohos.permission.UPDATE_SYSTEM
597
598**返回值:**
599
600| 类型                              | 说明                  |
601| ------------------------------- | ------------------- |
602| Promise\<[TaskInfo](#taskinfo)> | Promise对象,返回任务信息对象。 |
603
604**错误码**:
605
606以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
607
608| 错误码ID       | 错误信息                                                  |
609| -------  | ---------------------------------------------------- |
610| 201      | Permission denied.       |
611| 202      | not system application.  |
612| 11500104 | IPC error.               |
613
614**示例:**
615
616```ts
617import { BusinessError } from '@kit.BasicServicesKit';
618
619updater.getTaskInfo().then((info: update.TaskInfo) => {
620  console.log(`getTaskInfo isexistTask= ${info.existTask}`);
621}).catch((err: BusinessError) => {
622  console.error(`getTaskInfo promise error ${JSON.stringify(err)}`);
623});
624```
625
626###  download
627
628download(versionDigestInfo: VersionDigestInfo, downloadOptions: DownloadOptions, callback: AsyncCallback\<void>): void
629
630下载新版本。使用callback异步回调。
631
632**系统能力**:SystemCapability.Update.UpdateService
633
634**需要权限**:ohos.permission.UPDATE_SYSTEM
635
636**参数:**
637
638| 参数名               | 类型                                      | 必填   | 说明                                 |
639| ----------------- | --------------------------------------- | ---- | ---------------------------------- |
640| versionDigestInfo | [VersionDigestInfo](#versiondigestinfo) | 是    | 版本摘要信息。                             |
641| downloadOptions   | [DownloadOptions](#downloadoptions)     | 是    | 下载选项。                               |
642| callback          | AsyncCallback\<void>                    | 是    | 回调函数。当下载成功时,err为undefined,否则为错误对象。 |
643
644**错误码**:
645
646以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
647
648| 错误码ID       | 错误信息                                                  |
649| -------  | ---------------------------------------------------- |
650| 201      | Permission denied.       |
651| 202      | not system application.  |
652| 401      | Parameter verification failed.    |
653| 11500104 | IPC error.               |
654
655**示例:**
656
657```ts
658import { BusinessError } from '@kit.BasicServicesKit';
659
660// 版本摘要信息
661const versionDigestInfo: update.VersionDigestInfo = {
662  versionDigest: "versionDigest" // 检测结果中的版本摘要信息
663};
664
665// 下载选项
666const downloadOptions: update.DownloadOptions = {
667  allowNetwork: update.NetType.CELLULAR, // 允许数据网络下载
668  order: update.Order.DOWNLOAD // 下载
669};
670updater.download(versionDigestInfo, downloadOptions, (err: BusinessError) => {
671  console.log(`download error ${JSON.stringify(err)}`);
672});
673```
674
675### download
676
677download(versionDigestInfo: VersionDigestInfo, downloadOptions: DownloadOptions): Promise\<void>
678
679下载新版本。使用Promise异步回调。
680
681**系统能力**:SystemCapability.Update.UpdateService
682
683**需要权限**:ohos.permission.UPDATE_SYSTEM
684
685**参数:**
686
687| 参数名               | 类型                                      | 必填   | 说明     |
688| ----------------- | --------------------------------------- | ---- | ------ |
689| versionDigestInfo | [VersionDigestInfo](#versiondigestinfo) | 是    | 版本摘要信息。 |
690| downloadOptions   | [DownloadOptions](#downloadoptions)     | 是    | 下载选项。   |
691
692**返回值:**
693
694| 类型             | 说明                         |
695| -------------- | -------------------------- |
696| Promise\<void> | Promise对象。无返回结果的Promise对象。 |
697
698**错误码**:
699
700以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
701
702| 错误码ID       | 错误信息                                                  |
703| -------  | ---------------------------------------------------- |
704| 201      | Permission denied.       |
705| 202      | not system application.  |
706| 401      | Parameter verification failed.    |
707| 11500104 | IPC error.               |
708
709**示例:**
710
711```ts
712import { BusinessError } from '@kit.BasicServicesKit';
713
714// 版本摘要信息
715const versionDigestInfo: update.VersionDigestInfo = {
716  versionDigest: "versionDigest" // 检测结果中的版本摘要信息
717};
718
719// 下载选项
720const downloadOptions: update.DownloadOptions = {
721  allowNetwork: update.NetType.CELLULAR, // 允许数据网络下载
722   order: update.Order.DOWNLOAD // 下载
723};
724updater.download(versionDigestInfo, downloadOptions).then(() => {
725  console.log(`download start`);
726}).catch((err: BusinessError) => {
727  console.error(`download error ${JSON.stringify(err)}`);
728});
729```
730
731###  resumeDownload
732
733resumeDownload(versionDigestInfo: VersionDigestInfo, resumeDownloadOptions: ResumeDownloadOptions, callback: AsyncCallback\<void>): void
734
735恢复下载新版本。使用callback异步回调。
736
737**系统能力**:SystemCapability.Update.UpdateService
738
739**需要权限**:ohos.permission.UPDATE_SYSTEM
740
741**参数:**
742
743| 参数名                   | 类型                                       | 必填   | 说明                                   |
744| --------------------- | ---------------------------------------- | ---- | ------------------------------------ |
745| versionDigestInfo     | [VersionDigestInfo](#versiondigestinfo)  | 是    | 版本摘要信息。                               |
746| resumeDownloadOptions | [ResumeDownloadOptions](#resumedownloadoptions) | 是    | 恢复下载选项。                               |
747| callback              | AsyncCallback\<void>                     | 是    | 回调函数。当恢复下载成功时,err为undefined,否则为错误对象。 |
748
749**错误码**:
750
751以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
752
753| 错误码ID       | 错误信息                                                  |
754| -------  | ---------------------------------------------------- |
755| 201      | Permission denied.       |
756| 202      | not system application.  |
757| 401      | Parameter verification failed.    |
758| 11500104 | IPC error.               |
759
760**示例:**
761
762```ts
763import { BusinessError } from '@kit.BasicServicesKit';
764
765// 版本摘要信息
766const versionDigestInfo : update.VersionDigestInfo= {
767  versionDigest: "versionDigest" // 检测结果中的版本摘要信息
768};
769
770// 恢复下载选项
771const resumeDownloadOptions : update.ResumeDownloadOptions= {
772  allowNetwork: update.NetType.CELLULAR, // 允许数据网络下载
773};
774updater.resumeDownload(versionDigestInfo, resumeDownloadOptions, (err: BusinessError) => {
775  console.log(`resumeDownload error ${JSON.stringify(err)}`);
776});
777```
778
779### resumeDownload
780
781resumeDownload(versionDigestInfo: VersionDigestInfo, resumeDownloadOptions: ResumeDownloadOptions): Promise\<void>
782
783恢复下载新版本。使用Promise异步回调。
784
785**系统能力**:SystemCapability.Update.UpdateService
786
787**需要权限**:ohos.permission.UPDATE_SYSTEM
788
789**参数:**
790
791| 参数名                   | 类型                                       | 必填   | 说明     |
792| --------------------- | ---------------------------------------- | ---- | ------ |
793| versionDigestInfo     | [VersionDigestInfo](#versiondigestinfo)  | 是    | 版本摘要信息。 |
794| resumeDownloadOptions | [ResumeDownloadOptions](#resumedownloadoptions) | 是    | 恢复下载选项。 |
795
796**返回值:**
797
798| 类型             | 说明                         |
799| -------------- | -------------------------- |
800| Promise\<void> | Promise对象。无返回结果的Promise对象。 |
801
802**错误码**:
803
804以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
805
806| 错误码ID       | 错误信息                                                  |
807| -------  | ---------------------------------------------------- |
808| 201      | Permission denied.       |
809| 202      | not system application.  |
810| 401      | Parameter verification failed.    |
811| 11500104 | IPC error.               |
812
813**示例:**
814
815```ts
816import { BusinessError } from '@kit.BasicServicesKit';
817
818// 版本摘要信息
819const versionDigestInfo: update.VersionDigestInfo = {
820  versionDigest: "versionDigest" // 检测结果中的版本摘要信息
821};
822
823// 恢复下载选项
824const resumeDownloadOptions: update.ResumeDownloadOptions = {
825  allowNetwork: update.NetType.CELLULAR, // 允许数据网络下载
826};
827updater.resumeDownload(versionDigestInfo, resumeDownloadOptions).then(() => {
828  console.log(`resumeDownload start`);
829}).catch((err: BusinessError) => {
830  console.error(`resumeDownload error ${JSON.stringify(err)}`);
831});
832```
833
834###  pauseDownload
835
836pauseDownload(versionDigestInfo: VersionDigestInfo, pauseDownloadOptions: PauseDownloadOptions, callback: AsyncCallback\<void>): void
837
838暂停下载新版本。使用callback异步回调。
839
840**系统能力**:SystemCapability.Update.UpdateService
841
842**需要权限**:ohos.permission.UPDATE_SYSTEM
843
844**参数:**
845
846| 参数名                  | 类型                                       | 必填   | 说明                                   |
847| -------------------- | ---------------------------------------- | ---- | ------------------------------------ |
848| versionDigestInfo    | [VersionDigestInfo](#versiondigestinfo)  | 是    | 版本摘要信息。                               |
849| pauseDownloadOptions | [PauseDownloadOptions](#pausedownloadoptions) | 是    | 暂停下载选项。                               |
850| callback             | AsyncCallback\<void>                     | 是    | 回调函数。当暂停下载成功时,err为undefined,否则为错误对象。 |
851
852**错误码**:
853
854以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
855
856| 错误码ID       | 错误信息                                                  |
857| -------  | ---------------------------------------------------- |
858| 201      | Permission denied.       |
859| 202      | not system application.  |
860| 401      | Parameter verification failed.    |
861| 11500104 | IPC error.               |
862
863**示例:**
864
865```ts
866import { BusinessError } from '@kit.BasicServicesKit';
867
868// 版本摘要信息
869const versionDigestInfo: update.VersionDigestInfo = {
870  versionDigest: "versionDigest" // 检测结果中的版本摘要信息
871};
872
873// 暂停下载选项
874const pauseDownloadOptions: update.PauseDownloadOptions = {
875  isAllowAutoResume: true // 允许自动恢复下载
876};
877updater.pauseDownload(versionDigestInfo, pauseDownloadOptions, (err: BusinessError) => {
878  console.log(`pauseDownload error ${JSON.stringify(err)}`);
879});
880```
881
882### pauseDownload
883
884pauseDownload(versionDigestInfo: VersionDigestInfo, pauseDownloadOptions: PauseDownloadOptions): Promise\<void>
885
886恢复下载新版本。使用Promise异步回调。
887
888**系统能力**:SystemCapability.Update.UpdateService
889
890**需要权限**:ohos.permission.UPDATE_SYSTEM
891
892**参数:**
893
894| 参数名                  | 类型                                       | 必填   | 说明     |
895| -------------------- | ---------------------------------------- | ---- | ------ |
896| versionDigestInfo    | [VersionDigestInfo](#versiondigestinfo)  | 是    | 版本摘要信息。 |
897| pauseDownloadOptions | [PauseDownloadOptions](#pausedownloadoptions) | 是    | 暂停下载选项。 |
898
899**返回值:**
900
901| 类型             | 说明                         |
902| -------------- | -------------------------- |
903| Promise\<void> | Promise对象。无返回结果的Promise对象。 |
904
905**错误码**:
906
907以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
908
909| 错误码ID       | 错误信息                                                  |
910| -------  | ---------------------------------------------------- |
911| 201      | Permission denied.       |
912| 202      | not system application.  |
913| 401      | Parameter verification failed.    |
914| 11500104 | IPC error.               |
915
916**示例:**
917
918```ts
919import { BusinessError } from '@kit.BasicServicesKit';
920
921// 版本摘要信息
922const versionDigestInfo: update.VersionDigestInfo = {
923  versionDigest: "versionDigest" // 检测结果中的版本摘要信息
924};
925
926// 暂停下载选项
927const pauseDownloadOptions: update.PauseDownloadOptions = {
928  isAllowAutoResume: true // 允许自动恢复下载
929};
930updater.pauseDownload(versionDigestInfo, pauseDownloadOptions).then(() => {
931  console.log(`pauseDownload`);
932}).catch((err: BusinessError)  => {
933  console.error(`pauseDownload error ${JSON.stringify(err)}`);
934});
935```
936
937###  upgrade
938
939upgrade(versionDigestInfo: VersionDigestInfo, upgradeOptions: UpgradeOptions, callback: AsyncCallback\<void>): void
940
941升级新版本。使用callback异步回调。
942
943**系统能力**:SystemCapability.Update.UpdateService
944
945**需要权限**:ohos.permission.UPDATE_SYSTEM
946
947**参数:**
948
949| 参数名               | 类型                                      | 必填   | 说明                                   |
950| ----------------- | --------------------------------------- | ---- | ------------------------------------ |
951| versionDigestInfo | [VersionDigestInfo](#versiondigestinfo) | 是    | 版本摘要信息。                               |
952| upgradeOptions    | [UpgradeOptions](#upgradeoptions)       | 是    | 更新选项。                                 |
953| callback          | AsyncCallback\<void>                    | 是    | 回调函数。当升级执行成功时,err为undefined,否则为错误对象。 |
954
955**错误码**:
956
957以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
958
959| 错误码ID       | 错误信息                                                  |
960| -------  | ---------------------------------------------------- |
961| 201      | Permission denied.       |
962| 202      | not system application.  |
963| 401      | Parameter verification failed.    |
964| 11500104 | IPC error.               |
965
966**示例:**
967
968```ts
969import { BusinessError } from '@kit.BasicServicesKit';
970
971// 版本摘要信息
972const versionDigestInfo: update.VersionDigestInfo = {
973  versionDigest: "versionDigest" // 检测结果中的版本摘要信息
974};
975
976// 安装选项
977const upgradeOptions: update.UpgradeOptions = {
978  order: update.Order.INSTALL // 安装指令
979};
980updater.upgrade(versionDigestInfo, upgradeOptions, (err: BusinessError) => {
981  console.log(`upgrade error ${JSON.stringify(err)}`);
982});
983```
984
985### upgrade
986
987upgrade(versionDigestInfo: VersionDigestInfo, upgradeOptions: UpgradeOptions): Promise\<void>
988
989升级新版本。使用Promise异步回调。
990
991**系统能力**:SystemCapability.Update.UpdateService
992
993**需要权限**:ohos.permission.UPDATE_SYSTEM
994
995**参数:**
996
997| 参数名               | 类型                                      | 必填   | 说明     |
998| ----------------- | --------------------------------------- | ---- | ------ |
999| versionDigestInfo | [VersionDigestInfo](#versiondigestinfo) | 是    | 版本摘要信息。 |
1000| upgradeOptions    | [UpgradeOptions](#upgradeoptions)       | 是    | 更新选项。   |
1001
1002**返回值:**
1003
1004| 类型             | 说明                         |
1005| -------------- | -------------------------- |
1006| Promise\<void> | Promise对象。无返回结果的Promise对象。 |
1007
1008**错误码**:
1009
1010以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
1011
1012| 错误码ID       | 错误信息                                                  |
1013| -------  | ---------------------------------------------------- |
1014| 201      | Permission denied.       |
1015| 202      | not system application.  |
1016| 401      | Parameter verification failed.    |
1017| 11500104 | IPC error.               |
1018
1019**示例:**
1020
1021```ts
1022import { BusinessError } from '@kit.BasicServicesKit';
1023
1024// 版本摘要信息
1025const versionDigestInfo: update.VersionDigestInfo = {
1026  versionDigest: "versionDigest" // 检测结果中的版本摘要信息
1027};
1028
1029// 安装选项
1030const upgradeOptions: update.UpgradeOptions = {
1031  order: update.Order.INSTALL // 安装指令
1032};
1033updater.upgrade(versionDigestInfo, upgradeOptions).then(() => {
1034  console.log(`upgrade start`);
1035}).catch((err: BusinessError) => {
1036  console.error(`upgrade error ${JSON.stringify(err)}`);
1037});
1038```
1039
1040###  clearError
1041
1042clearError(versionDigestInfo: VersionDigestInfo, clearOptions: ClearOptions, callback: AsyncCallback\<void>): void
1043
1044清除异常状态。使用callback异步回调。
1045
1046**系统能力**:SystemCapability.Update.UpdateService
1047
1048**需要权限**:ohos.permission.UPDATE_SYSTEM
1049
1050**参数:**
1051
1052| 参数名               | 类型                                      | 必填   | 说明                                   |
1053| ----------------- | --------------------------------------- | ---- | ------------------------------------ |
1054| versionDigestInfo | [VersionDigestInfo](#versiondigestinfo) | 是    | 版本摘要信息。                               |
1055| clearOptions      | [ClearOptions](#clearoptions)           | 是    | 清除选项。                                 |
1056| callback          | AsyncCallback\<void>                    | 是    | 回调函数。当清除异常成功时,err为undefined,否则为错误对象。 |
1057
1058**错误码**:
1059
1060以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
1061
1062| 错误码ID       | 错误信息                                                  |
1063| -------  | ---------------------------------------------------- |
1064| 201      | Permission denied.       |
1065| 202      | not system application.  |
1066| 401      | Parameter verification failed.    |
1067| 11500104 | IPC error.               |
1068
1069**示例:**
1070
1071```ts
1072import { BusinessError } from '@kit.BasicServicesKit';
1073
1074// 版本摘要信息
1075const versionDigestInfo: update.VersionDigestInfo = {
1076  versionDigest: "versionDigest" // 检测结果中的版本摘要信息
1077};
1078
1079// 清除选项
1080const clearOptions: update.ClearOptions = {
1081  status: update.UpgradeStatus.UPGRADE_FAIL,
1082};
1083updater.clearError(versionDigestInfo, clearOptions, (err: BusinessError) => {
1084  console.log(`clearError error ${JSON.stringify(err)}`);
1085});
1086```
1087
1088### clearError
1089
1090clearError(versionDigestInfo: VersionDigestInfo, clearOptions: ClearOptions): Promise\<void>
1091
1092清除异常状态。使用Promise异步回调。
1093
1094**系统能力**:SystemCapability.Update.UpdateService
1095
1096**需要权限**:ohos.permission.UPDATE_SYSTEM
1097
1098**参数:**
1099
1100| 参数名               | 类型                                      | 必填   | 说明     |
1101| ----------------- | --------------------------------------- | ---- | ------ |
1102| versionDigestInfo | [VersionDigestInfo](#versiondigestinfo) | 是    | 版本摘要信息。 |
1103| clearOptions      | [ClearOptions](#clearoptions)           | 是    | 更新选项。   |
1104
1105**返回值:**
1106
1107| 类型             | 说明                         |
1108| -------------- | -------------------------- |
1109| Promise\<void> | Promise对象。无返回结果的Promise对象。 |
1110
1111**错误码**:
1112
1113以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
1114
1115| 错误码ID       | 错误信息                                                  |
1116| -------  | ---------------------------------------------------- |
1117| 201      | Permission denied.       |
1118| 202      | not system application.  |
1119| 401      | Parameter verification failed.    |
1120| 11500104 | IPC error.               |
1121
1122**示例:**
1123
1124```ts
1125import { BusinessError } from '@kit.BasicServicesKit';
1126
1127// 版本摘要信息
1128const versionDigestInfo: update.VersionDigestInfo = {
1129  versionDigest: "versionDigest" // 检测结果中的版本摘要信息
1130};
1131
1132// 清除选项
1133const clearOptions: update.ClearOptions = {
1134  status: update.UpgradeStatus.UPGRADE_FAIL,
1135};
1136updater.clearError(versionDigestInfo, clearOptions).then(() => {
1137  console.log(`clearError success`);
1138}).catch((err: BusinessError) => {
1139  console.error(`clearError error ${JSON.stringify(err)}`);
1140});
1141```
1142
1143### getUpgradePolicy
1144
1145getUpgradePolicy(callback: AsyncCallback\<UpgradePolicy>): void
1146
1147获取升级策略信息。使用callback异步回调。
1148
1149**系统能力**:SystemCapability.Update.UpdateService
1150
1151**需要权限**:ohos.permission.UPDATE_SYSTEM
1152
1153**参数:**
1154
1155| 参数名      | 类型                                       | 必填   | 说明              |
1156| -------- | ---------------------------------------- | ---- | --------------- |
1157| callback | AsyncCallback\<[UpgradePolicy](#upgradepolicy)> | 是    | 回调函数,返回升级策略信息对象。 |
1158
1159**错误码**:
1160
1161以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
1162
1163| 错误码ID       | 错误信息                                                  |
1164| -------  | ---------------------------------------------------- |
1165| 201      | Permission denied.       |
1166| 202      | not system application.  |
1167| 11500104 | IPC error.               |
1168
1169**示例:**
1170
1171```ts
1172import { BusinessError } from '@kit.BasicServicesKit';
1173
1174updater.getUpgradePolicy((err: BusinessError, policy: update.UpgradePolicy) => {
1175  console.log(`policy downloadStrategy = ${policy?.downloadStrategy}`);
1176  console.log(`policy autoUpgradeStrategy = ${policy?.autoUpgradeStrategy}`);
1177});
1178```
1179
1180### getUpgradePolicy
1181
1182getUpgradePolicy(): Promise\<UpgradePolicy>
1183
1184获取升级策略。通过promise方式作为异步方法。
1185
1186**系统能力**:SystemCapability.Update.UpdateService
1187
1188**需要权限**:ohos.permission.UPDATE_SYSTEM
1189
1190**返回值:**
1191
1192| 类型                                       | 说明                    |
1193| ---------------------------------------- | --------------------- |
1194| Promise\<[UpgradePolicy](#upgradepolicy)> | Promise对象,返回升级策略信息对象。 |
1195
1196**错误码**:
1197
1198以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
1199
1200| 错误码ID       | 错误信息                                                  |
1201| -------  | ---------------------------------------------------- |
1202| 201      | Permission denied.       |
1203| 202      | not system application.  |
1204| 11500104 | IPC error.               |
1205
1206**示例:**
1207
1208```ts
1209import { BusinessError } from '@kit.BasicServicesKit';
1210
1211updater.getUpgradePolicy().then((policy: update.UpgradePolicy) => {
1212  console.log(`policy downloadStrategy = ${policy.downloadStrategy}`);
1213  console.log(`policy autoUpgradeStrategy = ${policy.autoUpgradeStrategy}`);
1214}).catch((err: BusinessError)  => {
1215  console.error(`getUpgradePolicy promise error ${JSON.stringify(err)}`);
1216});
1217```
1218
1219### setUpgradePolicy
1220
1221setUpgradePolicy(policy: UpgradePolicy, callback: AsyncCallback\<void>): void
1222
1223设置升级策略。使用callback异步回调。
1224
1225**系统能力**:SystemCapability.Update.UpdateService
1226
1227**需要权限**:ohos.permission.UPDATE_SYSTEM
1228
1229**参数:**
1230
1231| 参数名      | 类型                              | 必填   | 说明            |
1232| -------- | ------------------------------- | ---- | ------------- |
1233| policy   | [UpgradePolicy](#upgradepolicy) | 是    | 升级策略。          |
1234| callback | AsyncCallback\<void>            | 是    | 回调函数,返回设置结果对象。 |
1235
1236**错误码**:
1237
1238以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
1239
1240| 错误码ID       | 错误信息                                                  |
1241| -------  | ---------------------------------------------------- |
1242| 201      | Permission denied.       |
1243| 202      | not system application.  |
1244| 11500104 | IPC error.               |
1245
1246**示例:**
1247
1248```ts
1249import { BusinessError } from '@kit.BasicServicesKit';
1250
1251const policy: update.UpgradePolicy = {
1252  downloadStrategy: false,
1253  autoUpgradeStrategy: false,
1254  autoUpgradePeriods: [{ start: 120, end: 240 }] // 自动升级时间段,用分钟表示
1255};
1256updater.setUpgradePolicy(policy, (err: BusinessError) => {
1257  console.log(`setUpgradePolicy result: ${err}`);
1258});
1259```
1260
1261### setUpgradePolicy
1262
1263setUpgradePolicy(policy: UpgradePolicy): Promise\<void>
1264
1265设置升级策略。使用Promise异步回调。
1266
1267**系统能力**:SystemCapability.Update.UpdateService
1268
1269**需要权限**:ohos.permission.UPDATE_SYSTEM
1270
1271**参数:**
1272
1273| 参数名    | 类型                              | 必填   | 说明   |
1274| ------ | ------------------------------- | ---- | ---- |
1275| policy | [UpgradePolicy](#upgradepolicy) | 是    | 升级策略。 |
1276
1277**返回值:**
1278
1279| 类型             | 说明                  |
1280| -------------- | ------------------- |
1281| Promise\<void> | Promise对象。 无返回结果的Promise对象。|
1282
1283**错误码**:
1284
1285以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
1286
1287| 错误码ID       | 错误信息                                                  |
1288| -------  | ---------------------------------------------------- |
1289| 201      | Permission denied.       |
1290| 202      | not system application.  |
1291| 11500104 | IPC error.               |
1292
1293**示例:**
1294
1295```ts
1296import { BusinessError } from '@kit.BasicServicesKit';
1297
1298const policy: update.UpgradePolicy = {
1299  downloadStrategy: false,
1300  autoUpgradeStrategy: false,
1301  autoUpgradePeriods: [ { start: 120, end: 240 } ] // 自动升级时间段,用分钟表示
1302};
1303updater.setUpgradePolicy(policy).then(() => {
1304  console.log(`setUpgradePolicy success`);
1305}).catch((err: BusinessError) => {
1306  console.error(`setUpgradePolicy promise error ${JSON.stringify(err)}`);
1307});
1308```
1309
1310###  terminateUpgrade
1311
1312terminateUpgrade(callback: AsyncCallback\<void>): void
1313
1314终止升级。使用callback异步回调。
1315
1316**系统能力**:SystemCapability.Update.UpdateService
1317
1318**需要权限**:ohos.permission.UPDATE_SYSTEM
1319
1320**参数:**
1321
1322| 参数名      | 类型                   | 必填   | 说明                                     |
1323| -------- | -------------------- | ---- | -------------------------------------- |
1324| callback | AsyncCallback\<void> | 是    | 回调函数。当清除升级缓存成功时,err为undefined,否则为错误对象。 |
1325
1326**错误码**:
1327
1328以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
1329
1330| 错误码ID       | 错误信息                                                  |
1331| -------  | ---------------------------------------------------- |
1332| 201      | Permission denied.       |
1333| 202      | not system application.  |
1334| 11500104 | IPC error.               |
1335
1336**示例:**
1337
1338```ts
1339import { BusinessError } from '@kit.BasicServicesKit';
1340
1341updater.terminateUpgrade((err: BusinessError) => {
1342  console.log(`terminateUpgrade error ${JSON.stringify(err)}`);
1343});
1344```
1345
1346### terminateUpgrade
1347
1348terminateUpgrade(): Promise\<void>
1349
1350终止升级。使用Promise异步回调。
1351
1352**系统能力**:SystemCapability.Update.UpdateService
1353
1354**需要权限**:ohos.permission.UPDATE_SYSTEM
1355
1356**返回值:**
1357
1358| 类型             | 说明                         |
1359| -------------- | -------------------------- |
1360| Promise\<void> | Promise对象。无返回结果的Promise对象。 |
1361
1362**错误码**:
1363
1364以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
1365
1366| 错误码ID       | 错误信息                                                  |
1367| -------  | ---------------------------------------------------- |
1368| 201      | Permission denied.       |
1369| 202      | not system application.  |
1370| 11500104 | IPC error.               |
1371
1372**示例:**
1373
1374```ts
1375import { BusinessError } from '@kit.BasicServicesKit';
1376
1377updater.terminateUpgrade().then(() => {
1378  console.log(`terminateUpgrade success`);
1379}).catch((err: BusinessError) => {
1380  console.error(`terminateUpgrade error ${JSON.stringify(err)}`);
1381});
1382```
1383
1384
1385### on
1386on(eventClassifyInfo: EventClassifyInfo, taskCallback: UpgradeTaskCallback): void
1387
1388注册事件监听。使用callback异步回调。
1389
1390**系统能力**:SystemCapability.Update.UpdateService
1391
1392**参数:**
1393
1394| 参数名               | 类型                                       | 必填   | 说明   |
1395| ----------------- | ---------------------------------------- | ---- | ---- |
1396| eventClassifyInfo | [EventClassifyInfo](#eventclassifyinfo)  | 是    | 事件信息。 |
1397| taskCallback      | [UpgradeTaskCallback](#upgradetaskcallback) | 是    | 事件回调。 |
1398
1399
1400**示例:**
1401
1402```ts
1403const eventClassifyInfo: update.EventClassifyInfo = {
1404  eventClassify: update.EventClassify.TASK, // 订阅升级更新事件
1405  extraInfo: ""
1406};
1407
1408updater.on(eventClassifyInfo, (eventInfo: update.EventInfo) => {
1409  console.log("updater on " + JSON.stringify(eventInfo));
1410});
1411```
1412
1413### off
1414off(eventClassifyInfo: EventClassifyInfo, taskCallback?: UpgradeTaskCallback): void
1415
1416取消注册事件监听。使用callback异步回调。
1417
1418**系统能力**:SystemCapability.Update.UpdateService
1419
1420**参数:**
1421
1422| 参数名               | 类型                                       | 必填   | 说明   |
1423| ----------------- | ---------------------------------------- | ---- | ---- |
1424| eventClassifyInfo | [EventClassifyInfo](#eventclassifyinfo)  | 是    | 事件信息。 |
1425| taskCallback      | [UpgradeTaskCallback](#upgradetaskcallback) | 否    | 事件回调。 |
1426
1427
1428**示例:**
1429
1430```ts
1431const eventClassifyInfo: update.EventClassifyInfo = {
1432  eventClassify: update.EventClassify.TASK, // 订阅升级更新事件
1433  extraInfo: ""
1434};
1435
1436updater.off(eventClassifyInfo, (eventInfo: update.EventInfo) => {
1437  console.log("updater off " + JSON.stringify(eventInfo));
1438});
1439```
1440
1441## Restorer
1442
1443### factoryReset
1444
1445factoryReset(callback: AsyncCallback\<void>): void
1446
1447恢复出厂设置。使用callback异步回调。
1448
1449**系统能力**:SystemCapability.Update.UpdateService
1450
1451**需要权限**:ohos.permission.FACTORY_RESET
1452
1453**参数:**
1454
1455| 参数名      | 类型                   | 必填   | 说明                                     |
1456| -------- | -------------------- | ---- | -------------------------------------- |
1457| callback | AsyncCallback\<void> | 是    | 回调函数。当恢复出厂执行失败时,err为错误对象,有回调;执行成功时,err为undefined,无回调。 |
1458
1459**错误码**:
1460
1461以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
1462
1463| 错误码ID       | 错误信息                                                  |
1464| -------  | ---------------------------------------------------- |
1465| 201      | Permission denied.       |
1466| 202      | not system application.  |
1467| 11500104 | IPC error.               |
1468
1469**示例:**
1470
1471```ts
1472restorer.factoryReset((err) => {
1473  console.log(`factoryReset error ${JSON.stringify(err)}`);
1474});
1475```
1476
1477### factoryReset
1478
1479factoryReset(): Promise\<void>
1480
1481恢复出厂设置。使用Promise异步回调。
1482
1483**系统能力**:SystemCapability.Update.UpdateService
1484
1485**需要权限**:ohos.permission.FACTORY_RESET
1486
1487**返回值:**
1488
1489| 类型             | 说明                         |
1490| -------------- | -------------------------- |
1491| Promise\<void> | Promise对象。无返回结果的Promise对象。当恢复出厂执行失败时,有回调;执行成功无回调。 |
1492
1493**错误码**:
1494
1495以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
1496
1497| 错误码ID       | 错误信息                                                  |
1498| -------  | ---------------------------------------------------- |
1499| 201      | Permission denied.       |
1500| 202      | not system application.  |
1501| 11500104 | IPC error.               |
1502
1503**示例:**
1504
1505```ts
1506import { BusinessError } from '@kit.BasicServicesKit';
1507
1508restorer.factoryReset().then(() => {
1509  console.log(`factoryReset success`);
1510}).catch((err: BusinessError) => {
1511  console.error(`factoryReset error ${JSON.stringify(err)}`);
1512});
1513```
1514
1515## LocalUpdater
1516
1517### verifyUpgradePackage
1518
1519verifyUpgradePackage(upgradeFile: UpgradeFile, certsFile: string, callback: AsyncCallback\<void>): void
1520
1521校验升级包。使用callback异步回调。
1522
1523**系统能力**:SystemCapability.Update.UpdateService
1524
1525**需要权限**:ohos.permission.UPDATE_SYSTEM
1526
1527**参数:**
1528
1529| 参数名         | 类型                          | 必填   | 说明               |
1530| ----------- | --------------------------- | ---- | ---------------- |
1531| upgradeFile | [UpgradeFile](#upgradefile) | 是    | 升级文件。             |
1532| certsFile   | string                      | 是    | 证书文件路径。           |
1533| callback    | AsyncCallback\<void>        | 是    | 回调函数,返回升级包校验结果对象。 |
1534
1535**错误码**:
1536
1537以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
1538
1539| 错误码ID       | 错误信息                                                  |
1540| -------  | ---------------------------------------------------- |
1541| 201      | Permission denied.       |
1542| 202      | not system application.  |
1543| 401      | Parameter verification failed.    |
1544| 11500104 | IPC error.               |
1545
1546**示例:**
1547
1548```ts
1549const upgradeFile: update.UpgradeFile = {
1550  fileType: update.ComponentType.OTA, // OTA包
1551  filePath: "path" // 本地升级包路径
1552};
1553
1554localUpdater.verifyUpgradePackage(upgradeFile, "cerstFilePath", (err) => {
1555  console.log(`factoryReset error ${JSON.stringify(err)}`);
1556});
1557```
1558
1559### verifyUpgradePackage
1560
1561verifyUpgradePackage(upgradeFile: UpgradeFile, certsFile: string): Promise\<void>
1562
1563校验升级包。使用Promise异步回调。
1564
1565**系统能力**:SystemCapability.Update.UpdateService
1566
1567**需要权限**:ohos.permission.UPDATE_SYSTEM
1568
1569**参数:**
1570
1571| 参数名         | 类型                          | 必填   | 说明     |
1572| ----------- | --------------------------- | ---- | ------ |
1573| upgradeFile | [UpgradeFile](#upgradefile) | 是    | 升级文件。   |
1574| certsFile   | string                      | 是    | 证书文件路径。 |
1575
1576**返回值:**
1577
1578| 类型             | 说明                     |
1579| -------------- | ---------------------- |
1580| Promise\<void> | Promise对象,返回升级包校验结果对象。 |
1581
1582**错误码**:
1583
1584以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
1585
1586| 错误码ID       | 错误信息                                                  |
1587| -------  | ---------------------------------------------------- |
1588| 201      | Permission denied.       |
1589| 202      | not system application.  |
1590| 401      | Parameter verification failed.    |
1591| 11500104 | IPC error.               |
1592
1593**示例:**
1594
1595```ts
1596import { BusinessError } from '@kit.BasicServicesKit';
1597
1598const upgradeFile: update.UpgradeFile = {
1599  fileType: update.ComponentType.OTA, // OTA包
1600  filePath: "path" // 本地升级包路径
1601};
1602localUpdater.verifyUpgradePackage(upgradeFile, "cerstFilePath").then(() => {
1603  console.log(`verifyUpgradePackage success`);
1604}).catch((err: BusinessError) => {
1605  console.error(`verifyUpgradePackage error ${JSON.stringify(err)}`);
1606});
1607```
1608
1609### applyNewVersion
1610applyNewVersion(upgradeFiles: Array<[UpgradeFile](#upgradefile)>, callback: AsyncCallback\<void>): void
1611
1612安装升级包。使用callback异步回调。
1613
1614**系统能力**:SystemCapability.Update.UpdateService
1615
1616**需要权限**:ohos.permission.UPDATE_SYSTEM
1617
1618**参数:**
1619
1620| 参数名         | 类型                                 | 必填   | 说明                                      |
1621| ----------- | ---------------------------------- | ---- | --------------------------------------- |
1622| upgradeFile | Array<[UpgradeFile](#upgradefile)> | 是    | 升级文件。                                    |
1623| callback    | AsyncCallback\<void>               | 是    | 回调函数。当安装升级包执行成功时,err为undefined,否则为错误对象。 |
1624
1625**错误码**:
1626
1627以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
1628
1629| 错误码ID       | 错误信息                                                  |
1630| -------  | ---------------------------------------------------- |
1631| 201      | Permission denied.       |
1632| 202      | not system application.  |
1633| 401      | Parameter verification failed.    |
1634| 11500104 | IPC error.               |
1635
1636**示例:**
1637
1638```ts
1639const upgradeFiles: Array<update.UpgradeFile> = [{
1640  fileType: update.ComponentType.OTA, // OTA包
1641  filePath: "path" // 本地升级包路径
1642}];
1643
1644localUpdater.applyNewVersion(upgradeFiles, (err) => {
1645  console.log(`applyNewVersion error ${JSON.stringify(err)}`);
1646});
1647```
1648
1649### applyNewVersion
1650
1651applyNewVersion(upgradeFiles: Array<[UpgradeFile](#upgradefile)>): Promise\<void>
1652
1653安装升级包。使用Promise异步回调。
1654
1655**系统能力**:SystemCapability.Update.UpdateService
1656
1657**需要权限**:ohos.permission.UPDATE_SYSTEM
1658
1659**返回值:**
1660
1661| 类型             | 说明                         |
1662| -------------- | -------------------------- |
1663| Promise\<void> | Promise对象。无返回结果的Promise对象。 |
1664
1665**错误码**:
1666
1667以下的错误码的详细介绍请参见[升级错误码](errorcode-update.md)。
1668
1669| 错误码ID       | 错误信息                                                  |
1670| -------  | ---------------------------------------------------- |
1671| 201      | Permission denied.       |
1672| 202      | not system application.  |
1673| 401      | Parameter verification failed.    |
1674| 11500104 | IPC error.               |
1675
1676**示例:**
1677
1678```ts
1679import { BusinessError } from '@kit.BasicServicesKit';
1680
1681const upgradeFiles: Array<update.UpgradeFile> = [{
1682  fileType: update.ComponentType.OTA, // OTA包
1683  filePath: "path" // 本地升级包路径
1684}];
1685localUpdater.applyNewVersion(upgradeFiles).then(() => {
1686  console.log(`applyNewVersion success`);
1687}).catch((err: BusinessError) => {
1688  console.error(`applyNewVersion error ${JSON.stringify(err)}`);
1689});
1690```
1691
1692### on
1693on(eventClassifyInfo: EventClassifyInfo, taskCallback: UpgradeTaskCallback): void
1694
1695注册事件监听。使用callback异步回调。
1696
1697**系统能力**:SystemCapability.Update.UpdateService
1698
1699**参数:**
1700
1701| 参数名               | 类型                                       | 必填   | 说明   |
1702| ----------------- | ---------------------------------------- | ---- | ---- |
1703| eventClassifyInfo | [EventClassifyInfo](#eventclassifyinfo)  | 是    | 事件信息。 |
1704| taskCallback      | [UpgradeTaskCallback](#upgradetaskcallback) | 是    | 事件回调。 |
1705
1706
1707**示例:**
1708
1709```ts
1710const eventClassifyInfo: update.EventClassifyInfo = {
1711  eventClassify: update.EventClassify.TASK, // 订阅升级更新事件
1712  extraInfo: ""
1713};
1714
1715let onTaskUpdate: update.UpgradeTaskCallback = (eventInfo: update.EventInfo) => {
1716  console.log(`on eventInfo id `, eventInfo.eventId);
1717};
1718
1719localUpdater.on(eventClassifyInfo, onTaskUpdate);
1720```
1721
1722### off
1723off(eventClassifyInfo: EventClassifyInfo, taskCallback?: UpgradeTaskCallback): void
1724
1725取消注册事件监听。使用callback异步回调。
1726
1727**系统能力**:SystemCapability.Update.UpdateService
1728
1729**参数:**
1730
1731| 参数名               | 类型                                       | 必填   | 说明   |
1732| ----------------- | ---------------------------------------- | ---- | ---- |
1733| eventClassifyInfo | [EventClassifyInfo](#eventclassifyinfo)  | 是    | 事件信息。 |
1734| taskCallback      | [UpgradeTaskCallback](#upgradetaskcallback) | 否    | 事件回调。 |
1735
1736
1737**示例:**
1738
1739```ts
1740const eventClassifyInfo: update.EventClassifyInfo = {
1741  eventClassify: update.EventClassify.TASK, // 订阅升级更新事件
1742  extraInfo: ""
1743};
1744
1745let onTaskUpdate: update.UpgradeTaskCallback = (eventInfo: update.EventInfo) => {
1746  console.log(`on eventInfo id `, eventInfo.eventId);
1747};
1748
1749localUpdater.off(eventClassifyInfo, onTaskUpdate);
1750```
1751
1752## UpgradeInfo
1753
1754升级信息。
1755
1756**系统能力**:SystemCapability.Update.UpdateService
1757
1758| 名称           | 类型                          | 必填   | 说明     |
1759| ------------ | ----------------------------- | ---- | ------ |
1760| upgradeApp   | string                        | 是    | 调用方包名。  |
1761| businessType | [BusinessType](#businesstype) | 是    | 升级业务类型。 |
1762
1763## BusinessType
1764
1765升级业务类型。
1766
1767**系统能力**:SystemCapability.Update.UpdateService
1768
1769| 名称      | 类型                                | 必填   | 说明   |
1770| ------- | ----------------------------------- | ---- | ---- |
1771| vendor  | [BusinessVendor](#businessvendor)   | 是    | 供应商/厂家。  |
1772| subType | [BusinessSubType](#businesssubtype) | 是    | 升级类型。  |
1773
1774## CheckResult
1775
1776搜包结果。
1777
1778**系统能力**:SystemCapability.Update.UpdateService
1779
1780| 名称                | 类型                              | 必填   | 说明     |
1781| ----------------- | --------------------------------- | ---- | ------ |
1782| isExistNewVersion | boolean                              | 是    | 是否有新版本。<br>ture表示有新版本,false表示没有新版本。|
1783| newVersionInfo    | [NewVersionInfo](#newversioninfo) | 否    | 新版本数据。  |
1784
1785## NewVersionInfo
1786
1787新版本数据。
1788
1789**系统能力**:SystemCapability.Update.UpdateService
1790
1791| 名称                | 类型                                     | 必填   | 说明   |
1792| ----------------- | ---------------------------------------- | ---- | ---- |
1793| versionDigestInfo | [VersionDigestInfo](#versiondigestinfo)  | 是    | 版本摘要。 |
1794| versionComponents | Array\<[VersionComponent](#versioncomponent)> | 是    | 版本组件。 |
1795
1796## VersionDigestInfo
1797
1798版本摘要。
1799
1800**系统能力**:SystemCapability.Update.UpdateService
1801
1802| 名称            | 类型   | 必填   | 说明   |
1803| ------------- | ------ | ---- | ---- |
1804| versionDigest | string | 是    | 版本摘要。 |
1805
1806## VersionComponent
1807
1808版本组件。
1809
1810**系统能力**:SystemCapability.Update.UpdateService
1811
1812| 名称              | 类型                                | 必填   | 说明       |
1813| --------------- | ----------------------------------- | ---- | -------- |
1814| componentId     | string                              | 是    | 组件标识。     |
1815| componentType   | [ComponentType](#componenttype)     | 是    | 组件类型。     |
1816| upgradeAction   | [UpgradeAction](#upgradeaction)     | 是    | 升级方式。     |
1817| displayVersion  | string                              | 是    | 显示版本号。    |
1818| innerVersion    | string                              | 是    | 版本号。      |
1819| size            | number                              | 是    | 升级包大小,单位为B。    |
1820| effectiveMode   | [EffectiveMode](#effectivemode)     | 是    | 生效模式。     |
1821| descriptionInfo | [DescriptionInfo](#descriptioninfo) | 是    | 版本描述文件信息。 |
1822
1823## DescriptionOptions
1824
1825描述文件选项。
1826
1827**系统能力**:SystemCapability.Update.UpdateService
1828
1829| 名称       | 类型                                    | 必填   | 说明     |
1830| -------- | --------------------------------------- | ---- | ------ |
1831| format   | [DescriptionFormat](#descriptionformat) | 是    | 描述文件格式。 |
1832| language | string                                  | 是    | 描述文件语言。 |
1833
1834## ComponentDescription
1835
1836组件描述文件。
1837
1838**系统能力**:SystemCapability.Update.UpdateService
1839
1840| 名称              | 类型                                | 必填   | 说明     |
1841| --------------- | ----------------------------------- | ---- | ------ |
1842| componentId     | string                              | 是    | 组件标识。   |
1843| descriptionInfo | [DescriptionInfo](#descriptioninfo) | 是    | 描述文件信息。 |
1844
1845## DescriptionInfo
1846
1847版本描述文件信息。
1848
1849**系统能力**:SystemCapability.Update.UpdateService
1850
1851| 名称              | 类型                                | 必填   | 说明     |
1852| --------------- | ----------------------------------- | ---- | ------ |
1853| descriptionType | [DescriptionType](#descriptiontype) | 是    | 描述文件类型。 |
1854| content         | string                              | 是    | 描述文件内容。 |
1855
1856## CurrentVersionInfo
1857
1858当前版本信息。
1859
1860**系统能力**:SystemCapability.Update.UpdateService
1861
1862| 名称                | 类型                                     | 必填   | 说明    |
1863| ----------------- | ---------------------------------------- | ---- | ----- |
1864| osVersion         | string                                   | 是    | 系统版本号。 |
1865| deviceName        | string                                   | 是    | 设备名。   |
1866| versionComponents | Array\<[VersionComponent](#versioncomponent)> | 否    | 版本组件。  |
1867
1868## DownloadOptions
1869
1870下载选项。
1871
1872**系统能力**:SystemCapability.Update.UpdateService
1873
1874| 名称           | 类型                | 必填   | 说明   |
1875| ------------ | ------------------- | ---- | ---- |
1876| allowNetwork | [NetType](#nettype) | 是    | 网络类型。 |
1877| order        | [Order](#order)     | 是    | 升级指令。 |
1878
1879## ResumeDownloadOptions
1880
1881恢复下载选项。
1882
1883**系统能力**:SystemCapability.Update.UpdateService
1884
1885| 名称           | 类型                | 必填   | 说明   |
1886| ------------ | ------------------- | ---- | ---- |
1887| allowNetwork | [NetType](#nettype) | 是    | 网络类型。 |
1888
1889## PauseDownloadOptions
1890
1891暂停下载选项。
1892
1893**系统能力**:SystemCapability.Update.UpdateService
1894
1895| 名称                | 类型 | 必填   | 说明       |
1896| ----------------- | ---- | ---- | -------- |
1897| isAllowAutoResume | boolean | 是    | 是否允许自动恢复。<br>ture表示允许自动恢复,false表示不允许。 |
1898
1899## UpgradeOptions
1900
1901升级选项。
1902
1903**系统能力**:SystemCapability.Update.UpdateService
1904
1905| 名称    | 类型            | 必填   | 说明   |
1906| ----- | --------------- | ---- | ---- |
1907| order | [Order](#order) | 是    | 升级指令。 |
1908
1909## ClearOptions
1910
1911清除异常选项。
1912
1913**系统能力**:SystemCapability.Update.UpdateService
1914
1915| 名称     | 类型                            | 必填   | 说明   |
1916| ------ | ------------------------------- | ---- | ---- |
1917| status | [UpgradeStatus](#upgradestatus) | 是    | 异常状态。 |
1918
1919## UpgradePolicy
1920
1921升级策略。
1922
1923**系统能力**:SystemCapability.Update.UpdateService
1924
1925| 名称                  | 类型                                    | 必填   | 说明      |
1926| ------------------- | --------------------------------------- | ---- | ------- |
1927| downloadStrategy    | boolean                        | 是    | 自动下载策略。 <br>ture表示可自动下载,false表示不可自动下载。 |
1928| autoUpgradeStrategy | boolean                        | 是    | 自动升级策略。 <br>ture表示可自动升级,false表示不可自动升级。 |
1929| autoUpgradePeriods  | Array\<[UpgradePeriod](#upgradeperiod)> | 是    | 自动升级时间段。 |
1930
1931## UpgradePeriod
1932
1933升级时间段。
1934
1935**系统能力**:SystemCapability.Update.UpdateService
1936
1937| 名称    | 类型   | 必填   | 说明   |
1938| ----- | ------ | ---- | ---- |
1939| start | number | 是    | 开始时间。 |
1940| end   | number | 是    | 结束时间。 |
1941
1942## TaskInfo
1943
1944任务信息。
1945
1946**系统能力**:SystemCapability.Update.UpdateService
1947
1948| 名称        | 类型                  | 必填   | 说明     |
1949| --------- | --------------------- | ---- | ------ |
1950| existTask |  boolean                  | 是    | 是否存在任务。<br>ture表示存在,false表示不存在。 |
1951| taskBody  | [TaskBody](#taskbody) | 是    | 任务数据。   |
1952
1953## EventInfo
1954
1955事件信息。
1956
1957**系统能力**:SystemCapability.Update.UpdateService
1958
1959| 名称       | 类型                  | 必填   | 说明   |
1960| -------- | --------------------- | ---- | ---- |
1961| eventId  | [EventId](#eventid)   | 是    | 事件ID。 |
1962| taskBody | [TaskBody](#taskbody) | 是    | 任务数据。 |
1963
1964## TaskBody
1965
1966任务数据。
1967
1968**系统能力**:SystemCapability.Update.UpdateService
1969
1970| 名称                | 类型                                     | 必填   | 说明   |
1971| ----------------- | ---------------------------------------- | ---- | ---- |
1972| versionDigestInfo | [VersionDigestInfo](#versiondigestinfo)  | 是    | 版本摘要。 |
1973| status            | [UpgradeStatus](#upgradestatus)          | 是    | 升级状态。 |
1974| subStatus         | number                                   | 否    | 子状态。  |
1975| progress          | number                                   | 是    | 进度。   |
1976| installMode       | number                                   | 是    | 安装模式。 |
1977| errorMessages     | Array\<[ErrorMessage](#errormessage)>    | 否    | 错误信息。 |
1978| versionComponents | Array\<[VersionComponent](#versioncomponent)> | 是    | 版本组件。 |
1979
1980## ErrorMessage
1981
1982错误信息。
1983
1984**系统能力**:SystemCapability.Update.UpdateService
1985
1986| 名称           | 类型   | 必填   | 说明   |
1987| ------------ | ------ | ---- | ---- |
1988| errorCode    | number | 是    | 错误码。  |
1989| errorMessage | string | 是    | 错误描述。 |
1990
1991## EventClassifyInfo
1992
1993事件信息。
1994
1995**系统能力**:SystemCapability.Update.UpdateService
1996
1997| 名称            | 类型                            | 必填   | 说明   |
1998| ------------- | ------------------------------- | ---- | ---- |
1999| eventClassify | [EventClassify](#eventclassify) | 是    | 事件类型。 |
2000| extraInfo     | string                          | 是    | 额外信息。 |
2001
2002## UpgradeFile
2003
2004升级文件。
2005
2006**系统能力**:SystemCapability.Update.UpdateService
2007
2008| 名称       | 类型                            | 必填   | 说明   |
2009| -------- | ------------------------------- | ---- | ---- |
2010| fileType | [ComponentType](#componenttype) | 是    | 文件类型。 |
2011| filePath | string                          | 是    | 文件路径。 |
2012
2013## UpgradeTaskCallback
2014
2015(eventInfo: EventInfo): void
2016
2017事件回调。
2018
2019**系统能力**:SystemCapability.Update.UpdateService
2020
2021| 名称        | 类型                    | 必填   | 说明   |
2022| --------- | ----------------------- | ---- | ---- |
2023| eventInfo | [EventInfo](#eventinfo) | 是    | 事件信息。 |
2024
2025## BusinessVendor
2026
2027设备厂家。
2028
2029**系统能力**:SystemCapability.Update.UpdateService
2030
2031| 名称    | 值      | 说明   |
2032| ------ | -------- | ---- |
2033| PUBLIC | "public" | 开源。   |
2034
2035## BusinessSubType
2036
2037升级类型。
2038
2039**系统能力**:SystemCapability.Update.UpdateService
2040
2041| 名称      | 值  | 说明   |
2042| -------- | ---- | ---- |
2043| FIRMWARE | 1    | 固件。   |
2044
2045## ComponentType
2046
2047组件类型。
2048
2049**系统能力**:SystemCapability.Update.UpdateService
2050
2051| 名称  | 值  | 说明   |
2052| ---- | ---- | ---- |
2053| OTA  | 1    | 固件。   |
2054
2055## UpgradeAction
2056
2057升级方式。
2058
2059**系统能力**:SystemCapability.Update.UpdateService
2060
2061| 名称      | 值        | 说明   |
2062| -------- | ---------- | ---- |
2063| UPGRADE  | "upgrade"  | 差分包。  |
2064| RECOVERY | "recovery" | 修复包。  |
2065
2066## EffectiveMode
2067
2068生效模式。
2069
2070**系统能力**:SystemCapability.Update.UpdateService
2071
2072| 名称           | 值  | 说明   |
2073| ------------- | ---- | ---- |
2074| COLD          | 1    | 冷升级。  |
2075| LIVE          | 2    | 热升级。  |
2076| LIVE_AND_COLD | 3    | 融合升级。 |
2077
2078## DescriptionType
2079
2080描述文件类型。
2081
2082**系统能力**:SystemCapability.Update.UpdateService
2083
2084| 名称     | 值  | 说明   |
2085| ------- | ---- | ---- |
2086| CONTENT | 0    | 内容。   |
2087| URI     | 1    | 链接。   |
2088
2089## DescriptionFormat
2090
2091描述文件格式。
2092
2093**系统能力**:SystemCapability.Update.UpdateService
2094
2095| 名称        | 值  | 说明   |
2096| ---------- | ---- | ---- |
2097| STANDARD   | 0    | 标准格式。 |
2098| SIMPLIFIED | 1    | 简易格式。 |
2099
2100## NetType
2101
2102网络类型。
2103
2104**系统能力**:SystemCapability.Update.UpdateService
2105
2106| 名称               | 值  | 说明        |
2107| ----------------- | ---- | --------- |
2108| CELLULAR          | 1    | 数据网络。      |
2109| METERED_WIFI      | 2    | 热点WIFI。    |
2110| NOT_METERED_WIFI  | 4    | 非热点WIFI。   |
2111| WIFI              | 6    | WIFI。      |
2112| CELLULAR_AND_WIFI | 7    | 数据网络和WIFI。 |
2113
2114## Order
2115
2116升级指令。
2117
2118**系统能力**:SystemCapability.Update.UpdateService
2119
2120| 名称                  | 值  | 说明    |
2121| -------------------- | ---- | ----- |
2122| DOWNLOAD             | 1    | 下载。    |
2123| INSTALL              | 2    | 安装。    |
2124| DOWNLOAD_AND_INSTALL | 3    | 下载并安装。 |
2125| APPLY                | 4    | 生效。    |
2126| INSTALL_AND_APPLY    | 6    | 安装并生效。 |
2127
2128## UpgradeStatus
2129
2130升级状态。
2131
2132**系统能力**:SystemCapability.Update.UpdateService
2133
2134| 名称              | 值  | 说明   |
2135| ---------------- | ---- | ---- |
2136| WAITING_DOWNLOAD | 20   | 待下载。  |
2137| DOWNLOADING      | 21   | 下载中。  |
2138| DOWNLOAD_PAUSED  | 22   | 下载暂停。 |
2139| DOWNLOAD_FAIL    | 23   | 下载失败。 |
2140| WAITING_INSTALL  | 30   | 待安装。  |
2141| UPDATING         | 31   | 更新中。  |
2142| WAITING_APPLY    | 40   | 待生效。  |
2143| APPLYING         | 41   | 生效中。  |
2144| UPGRADE_SUCCESS  | 50   | 升级成功。 |
2145| UPGRADE_FAIL     | 51   | 升级失败。 |
2146
2147## EventClassify
2148
2149事件类型。
2150
2151**系统能力**:SystemCapability.Update.UpdateService
2152
2153| 名称   | 值        | 说明   |
2154| ---- | ---------- | ---- |
2155| TASK | 0x01000000 | 任务事件。 |
2156
2157## EventId
2158
2159事件ID。
2160
2161**系统能力**:SystemCapability.Update.UpdateService
2162
2163| 名称                     | 值        | 说明     |
2164| ---------------------- | ---------- | ------ |
2165| EVENT_TASK_BASE        | EventClassify.TASK | 任务事件。   |
2166| EVENT_TASK_RECEIVE     | 0x01000001 | 收到任务。   |
2167| EVENT_TASK_CANCEL      | 0x01000002 | 取消任务。   |
2168| EVENT_DOWNLOAD_WAIT    | 0x01000003 | 待下载。    |
2169| EVENT_DOWNLOAD_START   | 0x01000004 | 开始下载。   |
2170| EVENT_DOWNLOAD_UPDATE  | 0x01000005 | 下载进度更新。 |
2171| EVENT_DOWNLOAD_PAUSE   | 0x01000006 | 下载暂停。   |
2172| EVENT_DOWNLOAD_RESUME  | 0x01000007 | 恢复下载。   |
2173| EVENT_DOWNLOAD_SUCCESS | 0x01000008 | 下载成功。   |
2174| EVENT_DOWNLOAD_FAIL    | 0x01000009 | 下载失败。   |
2175| EVENT_UPGRADE_WAIT     | 0x0100000A | 待升级。    |
2176| EVENT_UPGRADE_START    | 0x0100000B | 开始升级。   |
2177| EVENT_UPGRADE_UPDATE   | 0x0100000C | 升级中。    |
2178| EVENT_APPLY_WAIT       | 0x0100000D | 待生效。    |
2179| EVENT_APPLY_START      | 0x0100000E | 开始生效。   |
2180| EVENT_UPGRADE_SUCCESS  | 0x0100000F | 更新成功。   |
2181| EVENT_UPGRADE_FAIL     | 0x01000010 | 更新失败。   |
2182