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