W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
壁紙管理服務是系統(tǒng)服務,主要為系統(tǒng)提供壁紙管理服務能力,支持系統(tǒng)顯示、設置、切換壁紙等功能。
本模塊首批接口從API version 7開始支持。后續(xù)版本的新增接口,采用上角標單獨標記接口的起始版本。
定義壁紙的枚舉類型。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
名稱 | 值 | 說明 |
---|---|---|
WALLPAPER_SYSTEM | 0 | 主屏幕壁紙標識。 |
WALLPAPER_LOCKSCREEN | 1 | 鎖屏壁紙標識。 |
定義壁紙顏色信息結構。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
名稱 | 類型 | 可讀 | 可寫 | 說明 |
---|---|---|---|---|
red | number | 是 | 是 | 表示紅色值,范圍為 0 到 255。 |
green | number | 是 | 是 | 表示綠色值,范圍為 0 到 255。 |
blue | number | 是 | 是 | 表示藍色值,范圍為 0 到 255。 |
alpha | number | 是 | 是 | 表示 alpha 值,范圍為 0 到 255。 |
on(type: 'colorChange', callback: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void
訂閱壁紙顏色變化結果上報事件。
從 API version 7開始支持,從API version 9開始廢棄。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 取值為'colorChange',表示壁紙顏色變化結果上報事件。 |
callback | function | 是 | 壁紙顏色變化觸發(fā)該回調(diào)方法,返回壁紙類型和壁紙的主要顏色信息。 - colors 壁紙的主要顏色信息,其類型見RgbaColor。 - wallpaperType 壁紙類型。 |
示例:
- try {
- let listener = (colors, wallpaperType) => {
- console.log(`wallpaper color changed.`);
- };
- wallpaper.on('colorChange', listener);
- } catch (error) {
- console.error(`failed to on because: ${JSON.stringify(error)}`);
- }
off(type: 'colorChange', callback?: (colors: Array<RgbaColor>, wallpaperType: WallpaperType) => void): void
取消訂閱壁紙顏色變化結果上報事件。
從 API version 7開始支持,從API version 9開始廢棄。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 取值為'colorChange',表示取消訂閱壁紙顏色變化結果上報事件。 |
callback | function | 否 | 表示要取消的壁紙顏色變化的回調(diào),不填寫該參數(shù)則取消訂閱該type對應的所有回調(diào)。 - colors 壁紙的主要顏色信息,其類型見RgbaColor。 - wallpaperType 壁紙類型。 |
示例:
- let listener = (colors, wallpaperType) => {
- console.log(`wallpaper color changed.`);
- };
- try {
- wallpaper.on('colorChange', listener);
- } catch (error) {
- console.error(`failed to on because: ${JSON.stringify(error)}`);
- }
- try {
- // 取消訂閱listener
- wallpaper.off('colorChange', listener);
- } catch (error) {
- console.error(`failed to off because: ${JSON.stringify(error)}`);
- }
- try {
- // 取消所有'colorChange'類型的訂閱
- wallpaper.off('colorChange');
- } catch (error) {
- console.error(`failed to off because: ${JSON.stringify(error)}`);
- }
getColors(wallpaperType: WallpaperType, callback: AsyncCallback<Array<RgbaColor>>): void
獲取指定類型壁紙的主要顏色信息。
從 API version 7開始支持,從API version 9開始廢棄。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
wallpaperType | 是 | 壁紙類型。 | |
callback | AsyncCallback<Array<RgbaColor>> | 是 | 回調(diào)函數(shù),返回壁紙的主要顏色信息。 |
示例:
- wallpaper.getColors(wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error, data) => {
- if (error) {
- console.error(`failed to getColors because: ${JSON.stringify(error)}`);
- return;
- }
- console.log(`success to getColors: ${JSON.stringify(data)}`);
- });
getColors(wallpaperType: WallpaperType): Promise<Array<RgbaColor>>
獲取指定類型壁紙的主要顏色信息。
從 API version 7開始支持,從API version 9開始廢棄。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
wallpaperType | 是 | 壁紙類型。 |
返回值:
類型 | 說明 |
---|---|
Promise<Array<RgbaColor>> | 返回壁紙的主要顏色信息。 |
示例:
- wallpaper.getColors(wallpaper.WallpaperType.WALLPAPER_SYSTEM).then((data) => {
- console.log(`success to getColors: ${JSON.stringify(data)}`);
- }).catch((error) => {
- console.error(`failed to getColors because: ${JSON.stringify(error)}`);
- });
getId(wallpaperType: WallpaperType, callback: AsyncCallback<number>): void
獲取指定類型壁紙的ID。
從 API version 7開始支持,從API version 9開始廢棄。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
wallpaperType | 是 | 壁紙類型。 | |
callback | AsyncCallback<number> | 是 | 回調(diào)函數(shù),返回壁紙的ID。如果配置了指定類型的壁紙就返回一個大于等于0的數(shù),否則返回-1。取值范圍是-1到(2^31-1)。 |
示例:
- wallpaper.getId(wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error, data) => {
- if (error) {
- console.error(`failed to getId because: ${JSON.stringify(error)}`);
- return;
- }
- console.log(`success to getId: ${JSON.stringify(data)}`);
- });
getId(wallpaperType: WallpaperType): Promise<number>
獲取指定類型壁紙的ID。
從 API version 7開始支持,從API version 9開始廢棄。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
wallpaperType | 是 | 壁紙類型。 |
返回值:
類型 | 說明 |
---|---|
Promise<number> | 壁紙的ID。如果配置了這種壁紙類型的壁紙就返回一個大于等于0的數(shù),否則返回-1。取值范圍是-1到(2^31-1)。 |
示例:
- wallpaper.getId(wallpaper.WallpaperType.WALLPAPER_SYSTEM).then((data) => {
- console.log(`success to getId: ${JSON.stringify(data)}`);
- }).catch((error) => {
- console.error(`failed to getId because: ${JSON.stringify(error)}`);
- });
getMinHeight(callback: AsyncCallback<number>): void
獲取壁紙的最小高度值。
從 API version 7開始支持,從API version 9開始廢棄。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
callback | AsyncCallback<number> | 是 | 回調(diào)函數(shù),返回壁紙的最小高度值,單位是像素。如果返回值等于0,說明沒有設置壁紙,調(diào)用者應該使用默認顯示的高度值代替。 |
示例:
- wallpaper.getMinHeight((error, data) => {
- if (error) {
- console.error(`failed to getMinHeight because: ${JSON.stringify(error)}`);
- return;
- }
- console.log(`success to getMinHeight: ${JSON.stringify(data)}`);
- });
getMinHeight(): Promise<number>
獲取壁紙的最小高度值。
從 API version 7開始支持,從API version 9開始廢棄。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
返回值:
類型 | 說明 |
---|---|
Promise<number> | 返回壁紙的最小高度值,單位是像素。如果返回值等于0,說明沒有設置壁紙,調(diào)用者應該使用默認顯示的高度值代替。 |
示例:
- wallpaper.getMinHeight().then((data) => {
- console.log(`success to getMinHeight: ${JSON.stringify(data)}`);
- }).catch((error) => {
- console.error(`failed to getMinHeight because: ${JSON.stringify(error)}`);
- });
getMinWidth(callback: AsyncCallback<number>): void
獲取壁紙的最小寬度值。
從 API version 7開始支持,從API version 9開始廢棄。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
callback | AsyncCallback<number> | 是 | 回調(diào)函數(shù),壁紙的最小寬度值,單位是像素。如果返回值等于0,說明沒有設置壁紙,調(diào)用者應該使用默認顯示的寬度值代替。 |
示例:
- wallpaper.getMinWidth((error, data) => {
- if (error) {
- console.error(`failed to getMinWidth because: ${JSON.stringify(error)}`);
- return;
- }
- console.log(`success to getMinWidth: ${JSON.stringify(data)}`);
- });
getMinWidth(): Promise<number>
獲取壁紙的最小寬度值。
從 API version 7開始支持,從API version 9開始廢棄。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
返回值:
類型 | 說明 |
---|---|
Promise<number> | 壁紙的最小寬度值,單位是像素。如果返回值等于0,說明沒有設置壁紙,調(diào)用者應該使用默認顯示的寬度值代替。 |
示例:
- wallpaper.getMinWidth().then((data) => {
- console.log(`success to getMinWidth: ${JSON.stringify(data)}`);
- }).catch((error) => {
- console.error(`failed to getMinWidth because: ${JSON.stringify(error)}`);
- });
isChangePermitted(callback: AsyncCallback<boolean>): void
是否允許應用改變當前用戶的壁紙。
從 API version 7開始支持,從API version 9開始廢棄。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
callback | AsyncCallback<boolean> | 是 | 回調(diào)函數(shù),返回是否允許應用改變當前用戶的壁紙。如果允許返回true,否則返回false。 |
示例:
- wallpaper.isChangePermitted((error, data) => {
- if (error) {
- console.error(`failed to isChangePermitted because: ${JSON.stringify(error)}`);
- return;
- }
- console.log(`success to isChangePermitted: ${JSON.stringify(data)}`);
- });
isChangePermitted(): Promise<boolean>
是否允許應用改變當前用戶的壁紙。
從 API version 7開始支持,從API version 9開始廢棄。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
返回值:
類型 | 說明 |
---|---|
Promise<boolean> | 返回是否允許應用改變當前用戶的壁紙。如果允許返回true,否則返回false。 |
示例:
- wallpaper.isChangePermitted().then((data) => {
- console.log(`success to isChangePermitted: ${JSON.stringify(data)}`);
- }).catch((error) => {
- console.error(`failed to isChangePermitted because: ${JSON.stringify(error)}`);
- });
isOperationAllowed(callback: AsyncCallback<boolean>): void
是否允許用戶設置壁紙。
從 API version 7開始支持,從API version 9開始廢棄。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
callback | AsyncCallback<boolean> | 是 | 回調(diào)函數(shù),返回是否允許用戶設置壁紙。如果允許返回true,否則返回false。 |
示例:
- wallpaper.isOperationAllowed((error, data) => {
- if (error) {
- console.error(`failed to isOperationAllowed because: ${JSON.stringify(error)}`);
- return;
- }
- console.log(`success to isOperationAllowed: ${JSON.stringify(data)}`);
- });
isOperationAllowed(): Promise<boolean>
是否允許用戶設置壁紙。
從 API version 7開始支持,從API version 9開始廢棄。
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
返回值:
類型 | 說明 |
---|---|
Promise<boolean> | 異步回調(diào)函數(shù),返回是否允許用戶設置壁紙。如果允許返回true,否則返回false。 |
示例:
- wallpaper.isOperationAllowed().then((data) => {
- console.log(`success to isOperationAllowed: ${JSON.stringify(data)}`);
- }).catch((error) => {
- console.error(`failed to isOperationAllowed because: ${JSON.stringify(error)}`);
- });
reset(wallpaperType: WallpaperType, callback: AsyncCallback<void>): void
移除指定類型的壁紙,恢復為默認顯示的壁紙。
從 API version 7開始支持,從API version 9開始廢棄。
需要權限:ohos.permission.SET_WALLPAPER
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
wallpaperType | 是 | 壁紙類型。 | |
callback | AsyncCallback<void> | 是 | 回調(diào)函數(shù),移除壁紙成功,error為undefined,否則返回error信息。 |
示例:
- wallpaper.reset(wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error) => {
- if (error) {
- console.error(`failed to reset because: ${JSON.stringify(error)}`);
- return;
- }
- console.log(`success to reset.`);
- });
reset(wallpaperType: WallpaperType): Promise<void>
移除指定類型的壁紙,恢復為默認顯示的壁紙。
從 API version 7開始支持,從API version 9開始廢棄。
需要權限:ohos.permission.SET_WALLPAPER
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
wallpaperType | 是 | 壁紙類型。 |
返回值:
類型 | 說明 |
---|---|
Promise<void> | 無返回結果的Promise對象。 |
示例:
- wallpaper.reset(wallpaper.WallpaperType.WALLPAPER_SYSTEM).then(() => {
- console.log(`success to reset.`);
- }).catch((error) => {
- console.error(`failed to reset because: ${JSON.stringify(error)}`);
- });
setWallpaper(source: string | image.PixelMap, wallpaperType: WallpaperType, callback: AsyncCallback<void>): void
將指定資源設置為指定類型的壁紙。
從 API version 7開始支持,從API version 9開始廢棄。
需要權限:ohos.permission.SET_WALLPAPER
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
source | string | image.PixelMap | 是 | JPEG或PNG文件的Uri路徑,或者PNG格式文件的位圖。 |
wallpaperType | 是 | 壁紙類型。 | |
callback | AsyncCallback<void> | 是 | 回調(diào)函數(shù),設置壁紙成功,error為undefined,否則返回error信息。 |
示例:
- // source類型為string
- let wallpaperPath = "/data/data/ohos.acts.aafwk.plrdtest.form/files/Cup_ic.jpg";
- wallpaper.setWallpaper(wallpaperPath, wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error) => {
- if (error) {
- console.error(`failed to setWallpaper because: ${JSON.stringify(error)}`);
- return;
- }
- console.log(`success to setWallpaper.`);
- });
- // source類型為image.PixelMap
- import image from '@ohos.multimedia.image';
- let imageSource = image.createImageSource("file://" + wallpaperPath);
- let opts = {
- "desiredSize": {
- "height": 3648,
- "width": 2736
- }
- };
- imageSource.createPixelMap(opts).then((pixelMap) => {
- wallpaper.setWallpaper(pixelMap, wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error) => {
- if (error) {
- console.error(`failed to setWallpaper because: ${JSON.stringify(error)}`);
- return;
- }
- console.log(`success to setWallpaper.`);
- });
- }).catch((error) => {
- console.error(`failed to createPixelMap because: ${JSON.stringify(error)}`);
- });
setWallpaper(source: string | image.PixelMap, wallpaperType: WallpaperType): Promise<void>
將指定資源設置為指定類型的壁紙。
從 API version 7開始支持,從API version 9開始廢棄。
需要權限:ohos.permission.SET_WALLPAPER
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
source | string | image.PixelMap | 是 | JPEG或PNG文件的Uri路徑,或者PNG格式文件的位圖。 |
wallpaperType | 是 | 壁紙類型。 |
返回值:
類型 | 說明 |
---|---|
Promise<void> | 無返回結果的Promise對象。 |
示例:
- // source類型為string
- let wallpaperPath = "/data/data/ohos.acts.aafwk.plrdtest.form/files/Cup_ic.jpg";
- wallpaper.setWallpaper(wallpaperPath, wallpaper.WallpaperType.WALLPAPER_SYSTEM).then(() => {
- console.log(`success to setWallpaper.`);
- }).catch((error) => {
- console.error(`failed to setWallpaper because: ${JSON.stringify(error)}`);
- });
- // source類型為image.PixelMap
- import image from '@ohos.multimedia.image';
- let imageSource = image.createImageSource("file://" + wallpaperPath);
- let opts = {
- "desiredSize": {
- "height": 3648,
- "width": 2736
- }
- };
- imageSource.createPixelMap(opts).then((pixelMap) => {
- wallpaper.setWallpaper(pixelMap, wallpaper.WallpaperType.WALLPAPER_SYSTEM).then(() => {
- console.log(`success to setWallpaper.`);
- }).catch((error) => {
- console.error(`failed to setWallpaper because: ${JSON.stringify(error)}`);
- });
- }).catch((error) => {
- console.error(`failed to createPixelMap because: ${JSON.stringify(error)}`);
- });
getFile(wallpaperType: WallpaperType, callback: AsyncCallback<number>): void
獲取指定類型的壁紙文件。
從 API version 8開始支持,從API version 9開始廢棄。
需要權限:ohos.permission.GET_WALLPAPER
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
wallpaperType | 是 | 壁紙類型。 | |
callback | AsyncCallback<number> | 是 | 回調(diào)函數(shù),調(diào)用成功則返回壁紙文件描述符ID,調(diào)用失敗則返回error信息。 |
示例:
- wallpaper.getFile(wallpaper.WallpaperType.WALLPAPER_SYSTEM, (error, data) => {
- if (error) {
- console.error(`failed to getFile because: ${JSON.stringify(error)}`);
- return;
- }
- console.log(`success to getFile: ${JSON.stringify(data)}`);
- });
getFile(wallpaperType: WallpaperType): Promise<number>
獲取指定類型的壁紙文件。
從 API version 8開始支持,從API version 9開始廢棄。
需要權限:ohos.permission.GET_WALLPAPER
系統(tǒng)能力: SystemCapability.MiscServices.Wallpaper
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
wallpaperType | 是 | 壁紙類型。 |
返回值:
類型 | 說明 |
---|---|
Promise<number> | 調(diào)用成功則返回壁紙文件描述符ID,調(diào)用失敗則返回error信息。 |
示例:
- wallpaper.getFile(wallpaper.WallpaperType.WALLPAPER_SYSTEM).then((data) => {
- console.log(`success to getFile: ${JSON.stringify(data)}`);
- }).catch((error) => {
- console.error(`failed to getFile because: ${JSON.stringify(error)}`);
- });
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: