1# @ohos.wallpaper (壁纸) 2 3壁纸管理服务是OpenHarmony中的系统服务,主要为系统提供壁纸管理服务能力,支持系统显示、设置、切换壁纸等功能。 4 5> **说明:** 6> 7> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8 9 10## 导入模块 11 12 13```js 14import wallpaper from '@ohos.wallpaper'; 15``` 16 17## WallpaperType<sup>7+</sup> 18 19定义壁纸的枚举类型。 20 21**系统能力**: SystemCapability.MiscServices.Wallpaper 22 23| 名称 | 值 |说明 | 24| -------- | -------- |-------- | 25| WALLPAPER_SYSTEM | 0 |主屏幕壁纸标识。 | 26| WALLPAPER_LOCKSCREEN | 1 |锁屏壁纸标识。 | 27 28 29## RgbaColor<sup>(deprecated)</sup> 30 31定义壁纸颜色信息结构。 32 33> **说明:** 34> 35> 从 API version 7开始支持,从API version 9开始废弃。 36 37**系统能力**: SystemCapability.MiscServices.Wallpaper 38 39| 名称 | 类型 | 可读 | 可写 | 说明 | 40| -------- | -------- | -------- | -------- | -------- | 41| red | number | 是 | 是 | 表示红色值,范围为 0 到 255。 | 42| green | number | 是 | 是 | 表示绿色值,范围为 0 到 255。 | 43| blue | number | 是 | 是 | 表示蓝色值,范围为 0 到 255。 | 44| alpha | number | 是 | 是 | 表示 alpha 值,范围为 0 到 255。 | 45 46 47## wallpaper.getColorsSync<sup>9+</sup> 48 49getColorsSync(wallpaperType: WallpaperType): Array<RgbaColor> 50 51获取指定类型壁纸的主要颜色信息。 52 53**系统能力**: SystemCapability.MiscServices.Wallpaper 54 55**系统接口**:此接口为系统接口。 56 57**参数:** 58 59| 参数名 | 类型 | 必填 | 说明 | 60| -------- | -------- | -------- | -------- | 61| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 62 63**返回值**: 64 65| 类型 | 说明 | 66| -------- | -------- | 67| Array<[RgbaColor](#rgbacolor)> | 返回壁纸的主要颜色信息。 | 68 69**示例**: 70 71```js 72try { 73 let colors = wallpaper.getColorsSync(wallpaper.WallpaperType.WALLPAPER_SYSTEM); 74 console.log(`success to getColorsSync: ${JSON.stringify(colors)}`); 75} catch (error) { 76 console.error(`failed to getColorsSync because: ${JSON.stringify(error)}`); 77} 78``` 79 80## wallpaper.getMinHeightSync<sup>9+</sup> 81 82getMinHeightSync(): number 83 84获取壁纸的最小高度值。 85 86**系统能力**: SystemCapability.MiscServices.Wallpaper 87 88**系统接口**:此接口为系统接口。 89 90**返回值:** 91 92| 类型 | 说明 | 93| -------- | -------- | 94| number | 返回壁纸的最小高度值,单位是像素。如果返回值等于0,说明没有设置壁纸,调用者应该使用默认显示的高度值代替。 | 95 96**示例:** 97 98```js 99let minHeight = wallpaper.getMinHeightSync(); 100``` 101 102## wallpaper.getMinWidthSync<sup>9+</sup> 103 104getMinWidthSync(): number 105 106获取壁纸的最小宽度值。 107 108**系统能力**: SystemCapability.MiscServices.Wallpaper 109 110**系统接口**:此接口为系统接口。 111 112**返回值:** 113 114| 类型 | 说明 | 115| -------- | -------- | 116| number | 壁纸的最小宽度值,单位是像素。如果返回值等于0,说明没有设置壁纸,调用者应该使用默认显示的宽度值代替。 | 117 118**示例:** 119 120```js 121let minWidth = wallpaper.getMinWidthSync(); 122``` 123 124## wallpaper.restore<sup>9+</sup> 125 126restore(wallpaperType: WallpaperType, callback: AsyncCallback<void>): void 127 128移除指定类型的壁纸,恢复为默认显示的壁纸。 129 130**需要权限**:ohos.permission.SET_WALLPAPER 131 132**系统能力**: SystemCapability.MiscServices.Wallpaper 133 134**系统接口**:此接口为系统接口。 135 136**参数:** 137 138| 参数名 | 类型 | 必填 | 说明 | 139| -------- | -------- | -------- | -------- | 140| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 141| callback | AsyncCallback<void> | 是 | 回调函数,移除壁纸成功,error为undefined,否则返回error信息。 | 142 143**示例:** 144 145```js 146wallpaper.restore(wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error) => { 147 if (error) { 148 console.error(`failed to restore because: ${JSON.stringify(error)}`); 149 return; 150 } 151 console.log(`success to restore.`); 152}); 153``` 154 155## wallpaper.restore<sup>9+</sup> 156 157restore(wallpaperType: WallpaperType): Promise<void> 158 159移除指定类型的壁纸,恢复为默认显示的壁纸。 160 161**需要权限**:ohos.permission.SET_WALLPAPER 162 163**系统能力**: SystemCapability.MiscServices.Wallpaper 164 165**系统接口**:此接口为系统接口。 166 167**参数:** 168 169| 参数名 | 类型 | 必填 | 说明 | 170| -------- | -------- | -------- | -------- | 171| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 172 173**返回值:** 174 175| 类型 | 说明 | 176| -------- | -------- | 177| Promise<void> | 无返回结果的Promise对象。 | 178 179**示例:** 180 181```js 182wallpaper.restore(wallpaper.WallpaperType.WALLPAPER_SYSTEM).then(() => { 183 console.log(`success to restore.`); 184 }).catch((error) => { 185 console.error(`failed to restore because: ${JSON.stringify(error)}`); 186}); 187``` 188 189## wallpaper.setImage<sup>9+</sup> 190 191setImage(source: string | image.PixelMap, wallpaperType: WallpaperType, callback: AsyncCallback<void>): void 192 193将指定资源设置为指定类型的壁纸。 194 195**需要权限**:ohos.permission.SET_WALLPAPER 196 197**系统能力**: SystemCapability.MiscServices.Wallpaper 198 199**系统接口**:此接口为系统接口。 200 201**参数:** 202 203| 参数名 | 类型 | 必填 | 说明 | 204| -------- | -------- | -------- | -------- | 205| source | string \| [image.PixelMap](js-apis-image.md#pixelmap7) | 是 | JPEG或PNG文件的Uri路径,或者PNG格式文件的位图。 | 206| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 207| callback | AsyncCallback<void> | 是 | 回调函数,设置壁纸成功,error为undefined,否则返回error信息。 | 208 209**示例:** 210 211```js 212// source类型为string 213let wallpaperPath = "/data/data/ohos.acts.aafwk.plrdtest.form/files/Cup_ic.jpg"; 214wallpaper.setImage(wallpaperPath, wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error) => { 215 if (error) { 216 console.error(`failed to setImage because: ${JSON.stringify(error)}`); 217 return; 218 } 219 console.log(`success to setImage.`); 220}); 221 222// source类型为image.PixelMap 223import image from '@ohos.multimedia.image'; 224let imageSource = image.createImageSource("file://" + wallpaperPath); 225let opts = { 226 "desiredSize": { 227 "height": 3648, 228 "width": 2736 229 } 230}; 231imageSource.createPixelMap(opts).then((pixelMap) => { 232 wallpaper.setImage(pixelMap, wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error) => { 233 if (error) { 234 console.error(`failed to setImage because: ${JSON.stringify(error)}`); 235 return; 236 } 237 console.log(`success to setImage.`); 238 }); 239}).catch((error) => { 240 console.error(`failed to createPixelMap because: ${JSON.stringify(error)}`); 241}); 242``` 243 244## wallpaper.setImage<sup>9+</sup> 245 246setImage(source: string | image.PixelMap, wallpaperType: WallpaperType): Promise<void> 247 248将指定资源设置为指定类型的壁纸。 249 250**需要权限**:ohos.permission.SET_WALLPAPER 251 252**系统能力**: SystemCapability.MiscServices.Wallpaper 253 254**系统接口**:此接口为系统接口。 255 256**参数:** 257 258| 参数名 | 类型 | 必填 | 说明 | 259| -------- | -------- | -------- | -------- | 260| source | string \| [image.PixelMap](js-apis-image.md#pixelmap7) | 是 | JPEG或PNG文件的Uri路径,或者PNG格式文件的位图。 | 261| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 262 263**返回值:** 264 265| 类型 | 说明 | 266| -------- | -------- | 267| Promise<void> | 无返回结果的Promise对象。 | 268 269**示例:** 270 271```js 272// source类型为string 273let wallpaperPath = "/data/data/ohos.acts.aafwk.plrdtest.form/files/Cup_ic.jpg"; 274wallpaper.setImage(wallpaperPath, wallpaper.WallpaperType.WALLPAPER_SYSTEM).then(() => { 275 console.log(`success to setImage.`); 276}).catch((error) => { 277 console.error(`failed to setImage because: ${JSON.stringify(error)}`); 278}); 279 280// source类型为image.PixelMap 281import image from '@ohos.multimedia.image'; 282let imageSource = image.createImageSource("file://" + wallpaperPath); 283let opts = { 284 "desiredSize": { 285 "height": 3648, 286 "width": 2736 287 } 288}; 289imageSource.createPixelMap(opts).then((pixelMap) => { 290 wallpaper.setImage(pixelMap, wallpaper.WallpaperType.WALLPAPER_SYSTEM).then(() => { 291 console.log(`success to setImage.`); 292 }).catch((error) => { 293 console.error(`failed to setImage because: ${JSON.stringify(error)}`); 294 }); 295}).catch((error) => { 296 console.error(`failed to createPixelMap because: ${JSON.stringify(error)}`); 297}); 298``` 299 300## wallpaper.getImage<sup>9+</sup> 301 302getImage(wallpaperType: WallpaperType, callback: AsyncCallback<image.PixelMap>): void; 303 304获取壁纸图片的像素图。 305 306**需要权限**:ohos.permission.GET_WALLPAPER 307 308**系统能力**: SystemCapability.MiscServices.Wallpaper 309 310**系统接口**:此接口为系统接口。 311 312**参数:** 313 314| 参数名 | 类型 | 必填 | 说明 | 315| -------- | -------- | -------- | -------- | 316| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 317| callback | AsyncCallback<[image.PixelMap](js-apis-image.md#pixelmap7)> | 是 | 回调函数,调用成功则返回壁纸图片的像素图对象,调用失败则返回error信息。 | 318 319**示例:** 320 321```js 322wallpaper.getImage(wallpaper.WallpaperType.WALLPAPER_SYSTEM, function (error, data) { 323 if (error) { 324 console.error(`failed to getImage because: ${JSON.stringify(error)}`); 325 return; 326 } 327 console.log(`success to getImage: ${JSON.stringify(data)}`); 328}); 329``` 330 331 332## wallpaper.getImage<sup>9+</sup> 333 334getImage(wallpaperType: WallpaperType): Promise<image.PixelMap> 335 336获取壁纸图片的像素图。 337 338**需要权限**:ohos.permission.GET_WALLPAPER 339 340**系统能力**: SystemCapability.MiscServices.Wallpaper 341 342**系统接口**:此接口为系统接口。 343 344**参数:** 345 346| 参数名 | 类型 | 必填 | 说明 | 347| -------- | -------- | -------- | -------- | 348| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 349 350**返回值:** 351 352| 类型 | 说明 | 353| -------- | -------- | 354| Promise<[image.PixelMap](js-apis-image.md#pixelmap7)> | 调用成功则返回壁纸图片的像素图对象,调用失败则返回error信息。 | 355 356**示例:** 357 358```js 359wallpaper.getImage(wallpaper.WallpaperType.WALLPAPER_SYSTEM).then((data) => { 360 console.log(`success to getImage: ${JSON.stringify(data)}`); 361 }).catch((error) => { 362 console.error(`failed to getImage because: ${JSON.stringify(error)}`); 363}); 364``` 365 366## wallpaper.on('colorChange')<sup>(deprecated)</sup> 367 368on(type: 'colorChange', callback: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void 369 370订阅壁纸颜色变化结果上报事件。 371 372> **说明:** 373> 374> 从 API version 7开始支持,从API version 9开始废弃。 375 376**系统能力**: SystemCapability.MiscServices.Wallpaper 377 378**参数:** 379 380| 参数名 | 类型 | 必填 | 说明 | 381| -------- | -------- | -------- | -------- | 382| type | string | 是 | 取值为'colorChange',表示壁纸颜色变化结果上报事件。 | 383| callback | function | 是 | 壁纸颜色变化触发该回调方法,返回壁纸类型和壁纸的主要颜色信息。<br/>- colors<br/> 壁纸的主要颜色信息,其类型见[RgbaColor](#rgbacolor)。<br/>- wallpaperType<br/> 壁纸类型。 | 384 385**示例:** 386 387```js 388try { 389 let listener = (colors, wallpaperType) => { 390 console.log(`wallpaper color changed.`); 391 }; 392 wallpaper.on('colorChange', listener); 393} catch (error) { 394 console.error(`failed to on because: ${JSON.stringify(error)}`); 395} 396``` 397 398## wallpaper.off('colorChange')<sup>(deprecated)</sup> 399 400off(type: 'colorChange', callback?: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void 401 402取消订阅壁纸颜色变化结果上报事件。 403 404> **说明:** 405> 406> 从 API version 7开始支持,从API version 9开始废弃。 407 408**系统能力**: SystemCapability.MiscServices.Wallpaper 409 410**参数:** 411 412| 参数名 | 类型 | 必填 | 说明 | 413| -------- | -------- | -------- | -------- | 414| type | string | 是 | 取值为'colorChange',表示取消订阅壁纸颜色变化结果上报事件。 | 415| callback | function | 否 | 表示要取消的壁纸颜色变化的回调,不填写该参数则取消订阅该type对应的所有回调。<br/>- colors<br/> 壁纸的主要颜色信息,其类型见[RgbaColor](#rgbacolor)。<br/>- wallpaperType<br/> 壁纸类型。 | 416 417**示例:** 418 419```js 420let listener = (colors, wallpaperType) => { 421 console.log(`wallpaper color changed.`); 422}; 423try { 424 wallpaper.on('colorChange', listener); 425} catch (error) { 426 console.error(`failed to on because: ${JSON.stringify(error)}`); 427} 428 429try { 430 // 取消订阅listener 431 wallpaper.off('colorChange', listener); 432} catch (error) { 433 console.error(`failed to off because: ${JSON.stringify(error)}`); 434} 435 436try { 437 // 取消所有'colorChange'类型的订阅 438 wallpaper.off('colorChange'); 439} catch (error) { 440 console.error(`failed to off because: ${JSON.stringify(error)}`); 441} 442``` 443 444## wallpaper.getColors<sup>(deprecated)</sup> 445 446getColors(wallpaperType: WallpaperType, callback: AsyncCallback<Array<RgbaColor>>): void 447 448获取指定类型壁纸的主要颜色信息。 449 450> **说明:** 451> 452> 从 API version 7开始支持,从API version 9开始废弃。 453 454**系统能力**: SystemCapability.MiscServices.Wallpaper 455 456**参数:** 457 458| 参数名 | 类型 | 必填 | 说明 | 459| -------- | -------- | -------- | -------- | 460| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 461| callback | AsyncCallback<Array<[RgbaColor](#rgbacolor)>> | 是 | 回调函数,返回壁纸的主要颜色信息。 | 462 463**示例:** 464 465```js 466wallpaper.getColors(wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error, data) => { 467 if (error) { 468 console.error(`failed to getColors because: ${JSON.stringify(error)}`); 469 return; 470 } 471 console.log(`success to getColors: ${JSON.stringify(data)}`); 472}); 473``` 474 475## wallpaper.getColors<sup>(deprecated)</sup> 476 477getColors(wallpaperType: WallpaperType): Promise<Array<RgbaColor>> 478 479获取指定类型壁纸的主要颜色信息。 480 481> **说明:** 482> 483> 从 API version 7开始支持,从API version 9开始废弃。 484 485**系统能力**: SystemCapability.MiscServices.Wallpaper 486 487**参数:** 488 489| 参数名 | 类型 | 必填 | 说明 | 490| -------- | -------- | -------- | -------- | 491| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 492 493**返回值:** 494 495| 类型 | 说明 | 496| -------- | -------- | 497| Promise<Array<[RgbaColor](#rgbacolor)>> | 返回壁纸的主要颜色信息。 | 498 499**示例:** 500 501```js 502wallpaper.getColors(wallpaper.WallpaperType.WALLPAPER_SYSTEM).then((data) => { 503 console.log(`success to getColors: ${JSON.stringify(data)}`); 504 }).catch((error) => { 505 console.error(`failed to getColors because: ${JSON.stringify(error)}`); 506}); 507``` 508 509## wallpaper.getId<sup>(deprecated)</sup> 510 511getId(wallpaperType: WallpaperType, callback: AsyncCallback<number>): void 512 513获取指定类型壁纸的ID。 514 515> **说明:** 516> 517> 从 API version 7开始支持,从API version 9开始废弃。 518 519**系统能力**: SystemCapability.MiscServices.Wallpaper 520 521**参数:** 522 523| 参数名 | 类型 | 必填 | 说明 | 524| -------- | -------- | -------- | -------- | 525| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 526| callback | AsyncCallback<number> | 是 | 回调函数,返回壁纸的ID。如果配置了指定类型的壁纸就返回一个大于等于0的数,否则返回-1。取值范围是-1到(2^31-1)。 | 527 528**示例:** 529 530```js 531wallpaper.getId(wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error, data) => { 532 if (error) { 533 console.error(`failed to getId because: ${JSON.stringify(error)}`); 534 return; 535 } 536 console.log(`success to getId: ${JSON.stringify(data)}`); 537}); 538``` 539 540## wallpaper.getId<sup>(deprecated)</sup> 541 542getId(wallpaperType: WallpaperType): Promise<number> 543 544获取指定类型壁纸的ID。 545 546> **说明:** 547> 548> 从 API version 7开始支持,从API version 9开始废弃。 549 550**系统能力**: SystemCapability.MiscServices.Wallpaper 551 552**参数:** 553 554| 参数名 | 类型 | 必填 | 说明 | 555| -------- | -------- | -------- | -------- | 556| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 557 558**返回值:** 559 560| 类型 | 说明 | 561| -------- | -------- | 562| Promise<number> | 壁纸的ID。如果配置了这种壁纸类型的壁纸就返回一个大于等于0的数,否则返回-1。取值范围是-1到(2^31-1)。 | 563 564**示例:** 565 566```js 567wallpaper.getId(wallpaper.WallpaperType.WALLPAPER_SYSTEM).then((data) => { 568 console.log(`success to getId: ${JSON.stringify(data)}`); 569 }).catch((error) => { 570 console.error(`failed to getId because: ${JSON.stringify(error)}`); 571}); 572``` 573 574## wallpaper.getMinHeight<sup>(deprecated)</sup> 575 576getMinHeight(callback: AsyncCallback<number>): void 577 578获取壁纸的最小高度值。 579 580> **说明:** 581> 582> 从 API version 7开始支持,从API version 9开始废弃。 583 584**系统能力**: SystemCapability.MiscServices.Wallpaper 585 586**参数:** 587 588| 参数名 | 类型 | 必填 | 说明 | 589| -------- | -------- | -------- | -------- | 590| callback | AsyncCallback<number> | 是 | 回调函数,返回壁纸的最小高度值,单位是像素。如果返回值等于0,说明没有设置壁纸,调用者应该使用默认显示的高度值代替。 | 591 592**示例:** 593 594```js 595wallpaper.getMinHeight((error, data) => { 596 if (error) { 597 console.error(`failed to getMinHeight because: ${JSON.stringify(error)}`); 598 return; 599 } 600 console.log(`success to getMinHeight: ${JSON.stringify(data)}`); 601}); 602``` 603 604## wallpaper.getMinHeight<sup>(deprecated)</sup> 605 606getMinHeight(): Promise<number> 607 608获取壁纸的最小高度值。 609 610> **说明:** 611> 612> 从 API version 7开始支持,从API version 9开始废弃。 613 614**系统能力**: SystemCapability.MiscServices.Wallpaper 615 616**返回值:** 617 618| 类型 | 说明 | 619| -------- | -------- | 620| Promise<number> | 返回壁纸的最小高度值,单位是像素。如果返回值等于0,说明没有设置壁纸,调用者应该使用默认显示的高度值代替。 | 621 622**示例:** 623 624```js 625wallpaper.getMinHeight().then((data) => { 626 console.log(`success to getMinHeight: ${JSON.stringify(data)}`); 627}).catch((error) => { 628 console.error(`failed to getMinHeight because: ${JSON.stringify(error)}`); 629}); 630``` 631 632## wallpaper.getMinWidth<sup>(deprecated)</sup> 633 634getMinWidth(callback: AsyncCallback<number>): void 635 636获取壁纸的最小宽度值。 637 638> **说明:** 639> 640> 从 API version 7开始支持,从API version 9开始废弃。 641 642**系统能力**: SystemCapability.MiscServices.Wallpaper 643 644**参数:** 645 646| 参数名 | 类型 | 必填 | 说明 | 647| -------- | -------- | -------- | -------- | 648| callback | AsyncCallback<number> | 是 | 回调函数,壁纸的最小宽度值,单位是像素。如果返回值等于0,说明没有设置壁纸,调用者应该使用默认显示的宽度值代替。 | 649 650**示例:** 651 652```js 653wallpaper.getMinWidth((error, data) => { 654 if (error) { 655 console.error(`failed to getMinWidth because: ${JSON.stringify(error)}`); 656 return; 657 } 658 console.log(`success to getMinWidth: ${JSON.stringify(data)}`); 659}); 660``` 661 662## wallpaper.getMinWidth<sup>(deprecated)</sup> 663 664getMinWidth(): Promise<number> 665 666获取壁纸的最小宽度值。 667 668> **说明:** 669> 670> 从 API version 7开始支持,从API version 9开始废弃。 671 672**系统能力**: SystemCapability.MiscServices.Wallpaper 673 674**返回值:** 675 676| 类型 | 说明 | 677| -------- | -------- | 678| Promise<number> | 壁纸的最小宽度值,单位是像素。如果返回值等于0,说明没有设置壁纸,调用者应该使用默认显示的宽度值代替。 | 679 680**示例:** 681 682```js 683wallpaper.getMinWidth().then((data) => { 684 console.log(`success to getMinWidth: ${JSON.stringify(data)}`); 685 }).catch((error) => { 686 console.error(`failed to getMinWidth because: ${JSON.stringify(error)}`); 687}); 688``` 689 690## wallpaper.isChangePermitted<sup>(deprecated)</sup> 691 692isChangePermitted(callback: AsyncCallback<boolean>): void 693 694是否允许应用改变当前用户的壁纸。 695 696> **说明:** 697> 698> 从 API version 7开始支持,从API version 9开始废弃。 699 700**系统能力**: SystemCapability.MiscServices.Wallpaper 701 702**参数:** 703 704| 参数名 | 类型 | 必填 | 说明 | 705| -------- | -------- | -------- | -------- | 706| callback | AsyncCallback<boolean> | 是 | 回调函数,返回是否允许应用改变当前用户的壁纸。如果允许返回true,否则返回false。 | 707 708**示例:** 709 710```js 711wallpaper.isChangePermitted((error, data) => { 712 if (error) { 713 console.error(`failed to isChangePermitted because: ${JSON.stringify(error)}`); 714 return; 715 } 716 console.log(`success to isChangePermitted: ${JSON.stringify(data)}`); 717}); 718``` 719 720## wallpaper.isChangePermitted<sup>(deprecated)</sup> 721 722isChangePermitted(): Promise<boolean> 723 724是否允许应用改变当前用户的壁纸。 725 726> **说明:** 727> 728> 从 API version 7开始支持,从API version 9开始废弃。 729 730**系统能力**: SystemCapability.MiscServices.Wallpaper 731 732**返回值:** 733 734| 类型 | 说明 | 735| -------- | -------- | 736| Promise<boolean> | 返回是否允许应用改变当前用户的壁纸。如果允许返回true,否则返回false。 | 737 738**示例:** 739 740```js 741wallpaper.isChangePermitted().then((data) => { 742 console.log(`success to isChangePermitted: ${JSON.stringify(data)}`); 743}).catch((error) => { 744 console.error(`failed to isChangePermitted because: ${JSON.stringify(error)}`); 745}); 746``` 747 748## wallpaper.isOperationAllowed<sup>(deprecated)</sup> 749 750isOperationAllowed(callback: AsyncCallback<boolean>): void 751 752是否允许用户设置壁纸。 753 754> **说明:** 755> 756> 从 API version 7开始支持,从API version 9开始废弃。 757 758**系统能力**: SystemCapability.MiscServices.Wallpaper 759 760**参数:** 761 762| 参数名 | 类型 | 必填 | 说明 | 763| -------- | -------- | -------- | -------- | 764| callback | AsyncCallback<boolean> | 是 | 回调函数,返回是否允许用户设置壁纸。如果允许返回true,否则返回false。 | 765 766**示例:** 767 768```js 769wallpaper.isOperationAllowed((error, data) => { 770 if (error) { 771 console.error(`failed to isOperationAllowed because: ${JSON.stringify(error)}`); 772 return; 773 } 774 console.log(`success to isOperationAllowed: ${JSON.stringify(data)}`); 775}); 776``` 777 778## wallpaper.isOperationAllowed<sup>(deprecated)</sup> 779 780isOperationAllowed(): Promise<boolean> 781 782是否允许用户设置壁纸。 783 784> **说明:** 785> 786> 从 API version 7开始支持,从API version 9开始废弃。 787 788**系统能力**: SystemCapability.MiscServices.Wallpaper 789 790**返回值:** 791 792| 类型 | 说明 | 793| -------- | -------- | 794| Promise<boolean> | 异步回调函数,返回是否允许用户设置壁纸。如果允许返回true,否则返回false。 | 795 796**示例:** 797 798```js 799wallpaper.isOperationAllowed().then((data) => { 800 console.log(`success to isOperationAllowed: ${JSON.stringify(data)}`); 801 }).catch((error) => { 802 console.error(`failed to isOperationAllowed because: ${JSON.stringify(error)}`); 803}); 804``` 805 806## wallpaper.reset<sup>(deprecated)</sup> 807 808reset(wallpaperType: WallpaperType, callback: AsyncCallback<void>): void 809 810移除指定类型的壁纸,恢复为默认显示的壁纸。 811 812> **说明:** 813> 814> 从 API version 7开始支持,从API version 9开始废弃。 815 816**需要权限**:ohos.permission.SET_WALLPAPER 817 818**系统能力**: SystemCapability.MiscServices.Wallpaper 819 820**参数:** 821 822| 参数名 | 类型 | 必填 | 说明 | 823| -------- | -------- | -------- | -------- | 824| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 825| callback | AsyncCallback<void> | 是 | 回调函数,移除壁纸成功,error为undefined,否则返回error信息。 | 826 827**示例:** 828 829```js 830wallpaper.reset(wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error) => { 831 if (error) { 832 console.error(`failed to reset because: ${JSON.stringify(error)}`); 833 return; 834 } 835 console.log(`success to reset.`); 836}); 837``` 838 839## wallpaper.reset<sup>(deprecated)</sup> 840 841reset(wallpaperType: WallpaperType): Promise<void> 842 843移除指定类型的壁纸,恢复为默认显示的壁纸。 844 845> **说明:** 846> 847> 从 API version 7开始支持,从API version 9开始废弃。 848 849**需要权限**:ohos.permission.SET_WALLPAPER 850 851**系统能力**: SystemCapability.MiscServices.Wallpaper 852 853**参数:** 854 855| 参数名 | 类型 | 必填 | 说明 | 856| -------- | -------- | -------- | -------- | 857| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 858 859**返回值:** 860 861| 类型 | 说明 | 862| -------- | -------- | 863| Promise<void> | 无返回结果的Promise对象。 | 864 865**示例:** 866 867```js 868wallpaper.reset(wallpaper.WallpaperType.WALLPAPER_SYSTEM).then(() => { 869 console.log(`success to reset.`); 870}).catch((error) => { 871 console.error(`failed to reset because: ${JSON.stringify(error)}`); 872}); 873``` 874 875## wallpaper.setWallpaper<sup>(deprecated)</sup> 876 877setWallpaper(source: string | image.PixelMap, wallpaperType: WallpaperType, callback: AsyncCallback<void>): void 878 879将指定资源设置为指定类型的壁纸。 880 881> **说明:** 882> 883> 从 API version 7开始支持,从API version 9开始废弃。 884 885**需要权限**:ohos.permission.SET_WALLPAPER 886 887**系统能力**: SystemCapability.MiscServices.Wallpaper 888 889**参数:** 890 891| 参数名 | 类型 | 必填 | 说明 | 892| -------- | -------- | -------- | -------- | 893| source | string \| [image.PixelMap](js-apis-image.md#pixelmap7) | 是 | JPEG或PNG文件的Uri路径,或者PNG格式文件的位图。 | 894| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 895| callback | AsyncCallback<void> | 是 | 回调函数,设置壁纸成功,error为undefined,否则返回error信息。 | 896 897**示例:** 898 899```js 900// source类型为string 901let wallpaperPath = "/data/data/ohos.acts.aafwk.plrdtest.form/files/Cup_ic.jpg"; 902wallpaper.setWallpaper(wallpaperPath, wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error) => { 903 if (error) { 904 console.error(`failed to setWallpaper because: ${JSON.stringify(error)}`); 905 return; 906 } 907 console.log(`success to setWallpaper.`); 908}); 909 910// source类型为image.PixelMap 911import image from '@ohos.multimedia.image'; 912let imageSource = image.createImageSource("file://" + wallpaperPath); 913let opts = { 914 "desiredSize": { 915 "height": 3648, 916 "width": 2736 917 } 918}; 919imageSource.createPixelMap(opts).then((pixelMap) => { 920 wallpaper.setWallpaper(pixelMap, wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error) => { 921 if (error) { 922 console.error(`failed to setWallpaper because: ${JSON.stringify(error)}`); 923 return; 924 } 925 console.log(`success to setWallpaper.`); 926 }); 927}).catch((error) => { 928 console.error(`failed to createPixelMap because: ${JSON.stringify(error)}`); 929}); 930``` 931 932## wallpaper.setWallpaper<sup>(deprecated)</sup> 933 934setWallpaper(source: string | image.PixelMap, wallpaperType: WallpaperType): Promise<void> 935 936将指定资源设置为指定类型的壁纸。 937 938> **说明:** 939> 940> 从 API version 7开始支持,从API version 9开始废弃。 941 942**需要权限**:ohos.permission.SET_WALLPAPER 943 944**系统能力**: SystemCapability.MiscServices.Wallpaper 945 946**参数:** 947 948| 参数名 | 类型 | 必填 | 说明 | 949| -------- | -------- | -------- | -------- | 950| source | string \| [image.PixelMap](js-apis-image.md#pixelmap7) | 是 | JPEG或PNG文件的Uri路径,或者PNG格式文件的位图。 | 951| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 952 953**返回值:** 954 955| 类型 | 说明 | 956| -------- | -------- | 957| Promise<void> | 无返回结果的Promise对象。 | 958 959**示例:** 960 961```js 962// source类型为string 963let wallpaperPath = "/data/data/ohos.acts.aafwk.plrdtest.form/files/Cup_ic.jpg"; 964wallpaper.setWallpaper(wallpaperPath, wallpaper.WallpaperType.WALLPAPER_SYSTEM).then(() => { 965 console.log(`success to setWallpaper.`); 966 }).catch((error) => { 967 console.error(`failed to setWallpaper because: ${JSON.stringify(error)}`); 968}); 969 970// source类型为image.PixelMap 971import image from '@ohos.multimedia.image'; 972let imageSource = image.createImageSource("file://" + wallpaperPath); 973let opts = { 974 "desiredSize": { 975 "height": 3648, 976 "width": 2736 977 } 978}; 979imageSource.createPixelMap(opts).then((pixelMap) => { 980 wallpaper.setWallpaper(pixelMap, wallpaper.WallpaperType.WALLPAPER_SYSTEM).then(() => { 981 console.log(`success to setWallpaper.`); 982 }).catch((error) => { 983 console.error(`failed to setWallpaper because: ${JSON.stringify(error)}`); 984 }); 985 }).catch((error) => { 986 console.error(`failed to createPixelMap because: ${JSON.stringify(error)}`); 987}); 988``` 989 990 991## wallpaper.getFile<sup>(deprecated)</sup> 992 993getFile(wallpaperType: WallpaperType, callback: AsyncCallback<number>): void 994 995获取指定类型的壁纸文件。 996 997> **说明:** 998> 999> 从 API version 8开始支持,从API version 9开始废弃。 1000 1001**需要权限**:ohos.permission.GET_WALLPAPER 1002 1003**系统能力**: SystemCapability.MiscServices.Wallpaper 1004 1005**参数:** 1006 1007| 参数名 | 类型 | 必填 | 说明 | 1008| -------- | -------- | -------- | -------- | 1009| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 1010| callback | AsyncCallback<number> | 是 | 回调函数,调用成功则返回壁纸文件描述符ID,调用失败则返回error信息。 | 1011 1012**示例:** 1013 1014```js 1015wallpaper.getFile(wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error, data) => { 1016 if (error) { 1017 console.error(`failed to getFile because: ${JSON.stringify(error)}`); 1018 return; 1019 } 1020 console.log(`success to getFile: ${JSON.stringify(data)}`); 1021}); 1022``` 1023 1024## wallpaper.getFile<sup>(deprecated)</sup> 1025 1026getFile(wallpaperType: WallpaperType): Promise<number> 1027 1028获取指定类型的壁纸文件。 1029 1030> **说明:** 1031> 1032> 从 API version 8开始支持,从API version 9开始废弃。 1033 1034**需要权限**:ohos.permission.GET_WALLPAPER 1035 1036**系统能力**: SystemCapability.MiscServices.Wallpaper 1037 1038**参数:** 1039 1040| 参数名 | 类型 | 必填 | 说明 | 1041| -------- | -------- | -------- | -------- | 1042| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 1043 1044**返回值:** 1045 1046| 类型 | 说明 | 1047| -------- | -------- | 1048| Promise<number> | 调用成功则返回壁纸文件描述符ID,调用失败则返回error信息。 | 1049 1050**示例:** 1051 1052```js 1053wallpaper.getFile(wallpaper.WallpaperType.WALLPAPER_SYSTEM).then((data) => { 1054 console.log(`success to getFile: ${JSON.stringify(data)}`); 1055 }).catch((error) => { 1056 console.error(`failed to getFile because: ${JSON.stringify(error)}`); 1057}); 1058``` 1059 1060## wallpaper.getPixelMap<sup>(deprecated)</sup> 1061 1062getPixelMap(wallpaperType: WallpaperType, callback: AsyncCallback<image.PixelMap>): void; 1063 1064获取壁纸图片的像素图。 1065 1066> **说明:** 1067> 1068> 从 API version 7开始支持,从API version 9开始废弃。 1069 1070**需要权限**:ohos.permission.GET_WALLPAPER 1071 1072**系统能力**: SystemCapability.MiscServices.Wallpaper 1073 1074**系统接口**:此接口为系统接口。 1075 1076**参数:** 1077 1078| 参数名 | 类型 | 必填 | 说明 | 1079| -------- | -------- | -------- | -------- | 1080| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 1081| callback | AsyncCallback<image.PixelMap> | 是 | 回调函数,调用成功则返回壁纸图片的像素图对象,调用失败则返回error信息。 | 1082 1083**示例:** 1084 1085```js 1086wallpaper.getPixelMap(wallpaper.WallpaperType.WALLPAPER_SYSTEM, function (error, data) { 1087 if (error) { 1088 console.error(`failed to getPixelMap because: ${JSON.stringify(error)}`); 1089 return; 1090 } 1091 console.log(`success to getPixelMap : ${JSON.stringify(data)}`); 1092 }); 1093``` 1094 1095## wallpaper.getPixelMap<sup>(deprecated)</sup> 1096 1097getPixelMap(wallpaperType: WallpaperType): Promise<image.PixelMap> 1098 1099获取壁纸图片的像素图。 1100 1101> **说明:** 1102> 1103> 从 API version 7开始支持,从API version 9开始废弃。 1104 1105**需要权限**:ohos.permission.GET_WALLPAPER 1106 1107**系统能力**: SystemCapability.MiscServices.Wallpaper 1108 1109**系统接口**:此接口为系统接口。 1110 1111**参数:** 1112 1113| 参数名 | 类型 | 必填 | 说明 | 1114| -------- | -------- | -------- | -------- | 1115| wallpaperType | [WallpaperType](#wallpapertype) | 是 | 壁纸类型。 | 1116 1117**返回值:** 1118 1119| 类型 | 说明 | 1120| -------- | -------- | 1121| Promise<image.PixelMap> | 调用成功则返回壁纸图片的像素图对象,调用失败则返回error信息。 | 1122 1123**示例:** 1124 1125```js 1126wallpaper.getPixelMap(wallpaper.WallpaperType.WALLPAPER_SYSTEM).then((data) => { 1127 console.log(`success to getPixelMap : ${JSON.stringify(data)}`); 1128 }).catch((error) => { 1129 console.error(`failed to getPixelMap because: ${JSON.stringify(error)}`); 1130}); 1131``` 1132