资源管理


资源管理

资源管理模块,根据当前configuration(语言,区域,横竖屏,mccmnc)和device capability(设备类型,分辨率)提供获取应用资源信息读取接口。

说明:

本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import resourceManager from '@ohos.resourceManager';
1

使用说明

从API Version9开始,Stage模型支持了通过context获取resourceManager对象的方式,再调用其内部获取资源的接口,无需再导入包,此方式FA模型不适用。

this.context.resourceManager;
1

resourceManager.getResourceManager

getResourceManager(callback: AsyncCallback<ResourceManager>): void

获取当前应用的资源管理对象,使用callback形式返回ResourceManager对象。

模型约束:此接口仅可在FA模型下使用。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
callback AsyncCallback<ResourceManager> callback方式返回ResourceManager对象

示例:

resourceManager.getResourceManager((error, mgr) => {
    if (error != null) {
        console.log("error is " + error);
        return; 
    }
    mgr.getString(0x1000000, (error, value) => {
        if (error != null) {
            console.log("error is " + error);
        } else {
            let str = value;
        }
    });
});
1
2
3
4
5
6
7
8
9
10
11
12
13

resourceManager.getResourceManager

getResourceManager(bundleName: string, callback: AsyncCallback<ResourceManager>): void

获取指定应用的资源管理对象,使用callback形式返回ResourceManager对象。

模型约束:此接口仅可在FA模型下使用。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
bundleName string 指定应用的Bundle名称
callback AsyncCallback<ResourceManager> callback方式返回ResourceManager对象

示例:

resourceManager.getResourceManager("com.example.myapplication", (error, mgr) => {
});
1
2

resourceManager.getResourceManager

getResourceManager(): Promise<ResourceManager>

获取当前应用的资源管理对象,使用Promise形式返回ResourceManager对象。

模型约束:此接口仅可在FA模型下使用。

系统能力:SystemCapability.Global.ResourceManager

返回值:

类型 说明
Promise<ResourceManager> Promise方式返回资源管理对象

示例:

resourceManager.getResourceManager().then(mgr => {
    mgr.getString(0x1000000, (error, value) => {
        if (error != null) {
            console.log("error is " + error);
        } else {
            let str = value;
        }
    });
}).catch(error => {
    console.log("error is " + error);
});
1
2
3
4
5
6
7
8
9
10
11

resourceManager.getResourceManager

getResourceManager(bundleName: string): Promise<ResourceManager>

获取指定应用的资源管理对象,使用Promise形式返回ResourceManager对象。

模型约束:此接口仅可在FA模型下使用。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
bundleName string 指定应用的Bundle名称

返回值:

类型 说明
Promise<ResourceManager> Promise方式返回的资源管理对象

示例:

resourceManager.getResourceManager("com.example.myapplication").then(mgr => {
}).catch(error => {
});
1
2
3

Direction

用于表示设备屏幕方向。

系统能力:SystemCapability.Global.ResourceManager

名称 默认值 说明
DIRECTION_VERTICAL 0 竖屏
DIRECTION_HORIZONTAL 1 横屏

DeviceType

用于表示当前设备类型。

系统能力:SystemCapability.Global.ResourceManager

名称 默认值 说明
DEVICE_TYPE_PHONE 0x00 手机
DEVICE_TYPE_TABLET 0x01 平板
DEVICE_TYPE_CAR 0x02 汽车
DEVICE_TYPE_PC 0x03 电脑
DEVICE_TYPE_TV 0x04 电视
DEVICE_TYPE_WEARABLE 0x06 穿戴

ScreenDensity

用于表示当前设备屏幕密度。

系统能力:SystemCapability.Global.ResourceManager

名称 默认值 说明
SCREEN_SDPI 120 小规模的屏幕密度
SCREEN_MDPI 160 中规模的屏幕密度
SCREEN_LDPI 240 大规模的屏幕密度
SCREEN_XLDPI 320 特大规模的屏幕密度
SCREEN_XXLDPI 480 超大规模的屏幕密度
SCREEN_XXXLDPI 640 超特大规模的屏幕密度

Configuration

表示当前设备的状态。

系统能力:SystemCapability.Global.ResourceManager

名称 参数类型 可读 可写 说明
direction Direction 当前设备屏幕方向
locale string 当前系统语言

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getConfiguration((error, value) => {
        let direction = value.direction;
        let locale = value.locale;
    });
});
1
2
3
4
5
6

DeviceCapability

表示设备支持的能力。

系统能力:SystemCapability.Global.ResourceManager

名称 参数类型 可读 可写 说明
screenDensity ScreenDensity 当前设备屏幕密度
deviceType DeviceType 当前设备类型

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getDeviceCapability((error, value) => {
        let screenDensity = value.screenDensity;
        let deviceType = value.deviceType;
    });
});
1
2
3
4
5
6

RawFileDescriptor8+

表示rawfile的descriptor信息。

系统能力: SystemCapability.Global.ResourceManager

名称 类型 说明
fd number rawfile的descriptor
offset number rawfile的起始偏移量
length number rawfile的文件长度

Resource9+

表示的资源信息。

系统能力: 以下各项对应的系统能力均为SystemCapability.Global.ResourceManager

名称 类型 说明
bundleName string 应用的bundle名称
moduleName string 应用的module名称
id number 资源的id值

ResourceManager

提供访问应用资源的能力。

说明:

  • ResourceManager涉及到的方法,仅限基于TS扩展的声明式开发范式使用。

  • 资源文件在工程的resources目录中定义,id可通过r(资源地址).id的方式获取,例如r('app.string.test').id。

getStringValue9+

getStringValue(resId: number, callback: AsyncCallback<string>): void

用户获取指定资源ID对应的字符串,使用callback形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值
callback AsyncCallback<string> 异步回调,用于返回获取的字符串

错误码:

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例Stage:

  try {
      this.context.getStringValue($r('app.string.test').id, (error, value) => {
        if (error != null) {
            console.log("error is " + error);
        } else {
            let str = value;
        }
    });
  } catch (error) {
      console.error(`callback getStringValue failed, error code: ${error.code}, message: ${error.message}.`)
  }
1
2
3
4
5
6
7
8
9
10
11

getStringValue9+

getStringValue(resId: number): Promise<string>

用户获取指定资源ID对应的字符串,使用Promise形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值

返回值:

类型 说明
Promise<string> 资源ID值对应的字符串

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getStringValue($r('app.string.test').id).then(value => {
      let str = value;
  }).catch(error => {
      console.log("getStringValue promise error is " + error);
  });
} catch (error) {
  console.error(`promise getStringValue failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9

getStringValue9+

getStringValue(resource: Resource, callback: AsyncCallback<string>): void

用户获取指定resource对象对应的字符串,使用callback形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resource Resource 资源信息
callback AsyncCallback<string> 异步回调,用于返回获取的字符串

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.string.test').id
};
tyr {
  this.context.resourceManager.getStringValue(resource, (error, value) => {
      if (error != null) {
          console.log("error is " + error);
      } else {
          let str = value;
      }
  });
} catch (error) {
  console.error(`callback getStringValue failed, error code: ${error.code}, message: ${error.message}.`)
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

getStringValue9+

getStringValue(resource: Resource): Promise<string>

用户获取指定resource对象对应的字符串,使用Promise形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resource Resource 资源信息

返回值:

类型 说明
Promise<string> resource对象对应的字符串

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.string.test').id
};
try {
  this.context.resourceManager.getStringValue(resource).then(value => {
    let str = value;
  }).catch(error => {
    console.log("getStringValue promise error is " + error);
  });
} catch (error) {
  console.error(`callback getStringValue failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14

getStringArrayValue9+

getStringArrayValue(resId: number, callback: AsyncCallback<Array<string>>): void

用户获取指定资源ID对应的字符串数组,使用callback形式返回字符串数组。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值
callback AsyncCallback<Array<string>> 异步回调,用于返回获取的字符串数组

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getStringArrayValue($r('app.strarray.test').id, (error, value) => {
      if (error != null) {
          console.log("error is " + error);
      } else {
          let strArray = value;
      }
  });
} catch (error) {
  console.error(`callback getStringArrayValue failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11

getStringArrayValue9+

getStringArrayValue(resId: number): Promise<Array<string>>

用户获取指定资源ID对应的字符串数组,使用Promise形式返回字符串数组。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值

返回值:

类型 说明
Promise<Array<string>> 资源ID值对应的字符串数组

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getStringArrayValue($r('app.strarray.test').id).then(value => {
      let strArray = value;
  }).catch(error => {
      console.log("getStringArrayValue promise error is " + error);
  });
} catch (error) {
  console.error(`promise getStringArrayValue failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9

getStringArrayValue9+

getStringArrayValue(resource: Resource, callback: AsyncCallback<Array<string>>): void

用户获取指定resource对象对应的字符串数组,使用callback形式返回回字符串数组。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resource Resource 资源信息
callback AsyncCallback<Array<string>> 异步回调,用于返回获取的字符串数组

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.strarray.test').id
};
try {
  this.context.resourceManager.getStringArrayValue(resource, (error, value) => {
    if (error != null) {
        console.log("error is " + error);
    } else {
        let strArray = value;
    }
  });
} catch (error) {
  console.error(`callback getStringArrayValue failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

getStringArrayValue9+

getStringArrayValue(resource: Resource): Promise<Array<string>>

用户获取指定resource对象对应的字符串数组,使用Promise形式返回字符串数组。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resource Resource 资源信息

返回值:

类型 说明
Promise<Array<string>> resource对象对应的字符串数组

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.strarray.test').id
};
try {
  this.context.resourceManager.getStringArrayValue(resource).then(value => {
    let strArray = value;
  }).catch(error => {
      console.log("getStringArray promise error is " + error);
  });
} catch (error) {
  console.error(`promise getStringArrayValue failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14

getMediaContent

getMediaContent(resId: number, callback: AsyncCallback<Uint8Array>): void

用户获取指定资源ID对应的媒体文件内容,使用callback形式返回字节数组。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值
callback AsyncCallback<Uint8Array> 异步回调,用于返回获取的媒体文件内容

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.

示例:

try {
  this.context.resourceManager.getMediaContent($r('app.media.test').id, (error, value) => {
      if (error != null) {
          console.log("error is " + error);
      } else {
          let media = value;
      }
  });
} catch (error) {
  console.error(`callback getMediaContent failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11

getMediaContent

getMediaContent(resId: number): Promise<Uint8Array>

用户获取指定资源ID对应的媒体文件内容,使用Promise形式返回字节数组。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值

返回值:

类型 说明
Promise<Uint8Array> 资源ID值对应的媒体文件内容

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.

示例:

try {
    mgr.getMediaContent($r('app.media.test').id).then(value => {
        let media = value;
    }).catch(error => {
        console.log("getMediaContent promise error is " + error);
    });
} catch (error) {
  console.error(`promise getMediaContent failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9

getMediaContent9+

getMediaContent(resource: Resource, callback: AsyncCallback<Uint8Array>): void

用户获取指定resource对象对应的媒体文件内容,使用callback形式返回字节数组。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resource Resource 资源信息
callback AsyncCallback<Uint8Array> 异步回调,用于返回获取的媒体文件内容

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.

示例:

let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.media.test').id
};
try {
  this.context.resourceManager.getMediaContent(resource, (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      } else {
        let media = value;
      }
  });
} catch (error) {
  console.error(`callback getMediaContent failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

getMediaContent9+

getMediaContent(resource: Resource): Promise<Uint8Array>

用户获取指定resource对象对应的媒体文件内容,使用Promise形式返回字节数组。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resource Resource 资源信息

返回值:

类型 说明
Promise<Uint8Array> resource对象对应的媒体文件内容

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.

示例:

let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.media.test').id
};
try {
  this.context.resourceManager.getMediaContent(resource).then(value => {
    let media = value;
  }).catch(error => {
    console.log("getMediaContent promise error is " + error);
  });
} catch (error) {
  console.error(`promise getMediaContent failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14

getMediaContentBase64

getMediaContentBase64(resId: number, callback: AsyncCallback<string>): void

用户获取指定资源ID对应的图片资源Base64编码,使用callback形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值
callback AsyncCallback<string> 异步回调,用于返回获取的图片资源Base64编码

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.

示例:

try {
  mgr.getMediaContentBase64($r('app.media.test').id, (error, value) => {
      if (error != null) {
          console.log("error is " + error);
      } else {
          let media = value;
      }
  });       
} catch (error) {
  console.error(`callback getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11

getMediaContentBase64

getMediaContentBase64(resId: number): Promise<string>

用户获取指定资源ID对应的图片资源Base64编码,使用Promise形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值

返回值:

类型 说明
Promise<string> 资源ID值对应的图片资源Base64编码

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.

示例:

try {
  mgr.getMediaContentBase64($r('app.media.test').id).then(value => {
      let media = value;
  }).catch(error => {
      console.log("getMediaContentBase64 promise error is " + error);
  });
} catch (error) {
  console.error(`promise getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`)
} 
1
2
3
4
5
6
7
8
9

getMediaContentBase649+

getMediaContentBase64(resource: Resource, callback: AsyncCallback<string>): void

用户获取指定resource对象对应的图片资源Base64编码,使用callback形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resource Resource 资源信息
callback AsyncCallback<string> 异步回调,用于返回获取的图片资源Base64编码

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.

示例:

let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.media.test').id
};
try {
  this.context.resourceManager.getMediaContentBase64(resource, (error, value) => {
      if (error != null) {
          console.log("error is " + error);
      } else {
          let media = value;
      }
  });
} catch (error) {
  console.error(`promise getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

getMediaContentBase649+

getMediaContentBase64(resource: Resource): Promise<string>

用户获取指定resource对象对应的图片资源Base64编码,使用Promise形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resource Resource 资源信息

返回值:

类型 说明
Promise<string> resource对象对应的图片资源Base64编码

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.

示例:

let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.media.test').id
};
try {
  this.context.resourceManager.getMediaContentBase64(resource).then(value => {
      let media = value;
  }).catch(error => {
      console.log("getMediaContentBase64 promise error is " + error);
  });
} catch (error) {
  console.error(`promise getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14

getConfiguration

getConfiguration(callback: AsyncCallback<Configuration>): void

用户获取设备的Configuration,使用callback形式返回Configuration对象。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
callback AsyncCallback<Configuration> 异步回调,用于返回设备的Configuration

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getConfiguration((error, value) => {
        if (error != null) {
            console.log("error is " + error);
        } else {
            let direction = value.direction;
            let locale = value.locale;
        }
    });
});
1
2
3
4
5
6
7
8
9
10

getConfiguration

getConfiguration(): Promise<Configuration>

用户获取设备的Configuration,使用Promise形式返回Configuration对象。

系统能力:SystemCapability.Global.ResourceManager

返回值:

类型 说明
Promise<Configuration> 设备的Configuration

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getConfiguration().then(value => {
        let direction = value.direction;
        let locale = value.locale;
    }).catch(error => {
        console.log("getConfiguration promise error is " + error);
    });
});
1
2
3
4
5
6
7
8

getDeviceCapability

getDeviceCapability(callback: AsyncCallback<DeviceCapability>): void

用户获取设备的DeviceCapability,使用callback形式返回DeviceCapability对象。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
callback AsyncCallback<DeviceCapability> 异步回调,用于返回设备的DeviceCapability

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getDeviceCapability((error, value) => {
        if (error != null) {
            console.log("error is " + error);
        } else {
            let screenDensity = value.screenDensity;
            let deviceType = value.deviceType;
        }
    });
});
1
2
3
4
5
6
7
8
9
10

getDeviceCapability

getDeviceCapability(): Promise<DeviceCapability>

用户获取设备的DeviceCapability,使用Promise形式返回DeviceCapability对象。

系统能力:SystemCapability.Global.ResourceManager

返回值:

类型 说明
Promise<DeviceCapability> 设备的DeviceCapability

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getDeviceCapability().then(value => {
        let screenDensity = value.screenDensity;
        let deviceType = value.deviceType;
    }).catch(error => {
        console.log("getDeviceCapability promise error is " + error);
    });
});
1
2
3
4
5
6
7
8

getPluralStringValue

getPluralStringValue(resId: number, num: number, callback: AsyncCallback<string>): void

根据指定数量获取指定ID字符串表示的单复数字符串,使用callback形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值
num number 数量值
callback AsyncCallback<string> 异步回调,返回根据指定数量获取指定ID字符串表示的单复数字符串

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getPluralStringValue($r("app.plural.test").id, 1, (error, value) => {
      if (error != null) {
          console.log("error is " + error);
      } else {
          let str = value;
      }
  });
} catch (error) {
  console.error(`callback getPluralStringValue failed, error code: ${error.code}, message: ${error.message}.`)
}   
1
2
3
4
5
6
7
8
9
10
11

getPluralStringValue

getPluralStringValue(resId: number, num: number): Promise<string>

根据指定数量获取对指定ID字符串表示的单复数字符串,使用Promise形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值
num number 数量值

返回值:

类型 说明
Promise<string> 根据提供的数量获取对应ID字符串表示的单复数字符串

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getPluralStringValue($r("app.plural.test").id, 1).then(value => {
      let str = value;
  }).catch(error => {
      console.log("getPluralStringValue promise error is " + error);
  });
} catch (error) {
  console.error(`callback getPluralStringValue failed, error code: ${error.code}, message: ${error.message}.`)
}  
1
2
3
4
5
6
7
8
9

getPluralStringValue9+

getPluralStringValue(resource: Resource, num: number, callback: AsyncCallback<string>): void

根据指定数量获取指定resource对象表示的单复数字符串,使用callback形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resource Resource 资源信息
num number 数量值
callback AsyncCallback<string> 异步回调,返回根据指定数量获取指定resource对象表示的单复数字符串

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.plural.test').id
};
try {
  this.context.resourceManager.getPluralStringValue(resource, 1, (error, value) => {
      if (error != null) {
          console.log("error is " + error);
      } else {
          let str = value;
      }
  });
} catch (error) {
  console.error(`callback getPluralStringValue failed, error code: ${error.code}, message: ${error.message}.`)
}  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

getPluralString9+

getPluralString(resource: Resource, num: number): Promise<string>

根据指定数量获取对指定resource对象表示的单复数字符串,使用Promise形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resource Resource 资源信息
num number 数量值

返回值:

类型 说明
Promise<string> 根据提供的数量获取对应resource对象表示的单复数字符串

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.plural.test').id
};
try {
  this.context.resourceManager.getPluralString(resource, 1).then(value => {
      let str = value;
  }).catch(error => {
      console.log("getPluralString promise error is " + error);
  });
} catch (error) {
  console.error(`callback getPluralStringValue failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14

getRawFileContent9+

getRawFileContent(path: string, callback: AsyncCallback<Uint8Array>): void

用户获取resources/rawfile目录下对应的rawfile文件内容,使用callback形式返回字节数组。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
path string rawfile文件路径
callback AsyncCallback<Uint8Array> 异步回调,用于返回获取的rawfile文件内容

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001005 The resource not found by path.

示例:

try {
  this.context.resourceManager.getRawFileContent("test.xml", (error, value) => {
      if (error != null) {
          console.log("error is " + error);
      } else {
          let rawFile = value;
      }
  });
} catch (error) {
  console.error(`callback getRawFileContent failed, error code: ${error.code}, message: ${error.message}.`)
}
    
1
2
3
4
5
6
7
8
9
10
11
12

getRawFileContent9+

getRawFileContent(path: string): Promise<Uint8Array>

用户获取resources/rawfile目录下对应的rawfile文件内容,使用Promise形式返回字节数组。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
path string rawfile文件路径

返回值:

类型 说明
Promise<Uint8Array> rawfile文件内容

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001005 The resource not found by path.

示例:

try {
  this.context.resourceManager.getRawFileContent("test.xml").then(value => {
      let rawFile = value;
  }).catch(error => {
      console.log("getRawFileContent promise error is " + error);
  });
} catch (error) {
  console.error(`promise getRawFileContent failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9

getRawFd9+

getRawFd(path: string, callback: AsyncCallback<RawFileDescriptor>): void

用户获取resources/rawfile目录下对应rawfile文件的descriptor,使用callback形式返回。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
path string rawfile文件路径
callback AsyncCallback<getRawFd> 异步回调,用于返回获取的rawfile文件的descriptor

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001005 The resource not found by path.

示例:

try {
  this.context.resourceManager.getRawFd("test.xml", (error, value) => {
      if (error != null) {
          console.log("error is " + error);
      } else {
          let fd = value.fd;
          let offset = value.offset;
          let length = value.length;
      }
  });
} catch(error => {
  console.log("getRawFd callback error is " + error);
});
1
2
3
4
5
6
7
8
9
10
11
12
13

getRawFd9+

getRawFd(path: string): Promise<RawFileDescriptor>

用户获取resources/rawfile目录下对应rawfile文件的descriptor,使用Promise形式返回。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
path string rawfile文件路径

返回值:

类型 说明
Promise<getRawFd> rawfile文件descriptor

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001005 The resource not found by path.

示例:

try {
  this.context.resourceManager.getRawFd("test.xml").then(value => {
      let fd = value.fd;
      let offset = value.offset;
      let length = value.length;
  }).catch(error => {
      console.log("getRawFd promise error is " + error);
  });
} catch (error) {
  console.log("getRawFd promise error is " + error);
};
1
2
3
4
5
6
7
8
9
10
11

closeRawFileDescriptor8+

closeRawFileDescriptor(path: string, callback: AsyncCallback<void>): void

用户关闭resources/rawfile目录下rawfile文件的descriptor,使用callback形式返回。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
path string rawfile文件路径
callback AsyncCallback<void> 异步回调

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.closeRawFileDescriptor("test.xml", (error, value) => {
        if (error != null) {
            console.log("error is " + error);
        }
    });
});
1
2
3
4
5
6
7

closeRawFileDescriptor8+

closeRawFileDescriptor(path: string): Promise<void>

用户关闭resources/rawfile目录下rawfile文件的descriptor,使用Promise形式返回。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
path string rawfile文件路径

返回值:

类型 说明
Promise<void> 无返回值

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.closeRawFileDescriptor("test.xml").then(value => {
        let result = value;
    }).catch(error => {
        console.log("closeRawFileDescriptor promise error is " + error);
    });
});
1
2
3
4
5
6
7

closeRawFd9+

closeRawFd(path: string, callback: AsyncCallback<void>): void

用户关闭resources/rawfile目录下rawfile文件的descriptor,使用callback形式返回。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
path string rawfile文件路径
callback AsyncCallback<void> 异步回调

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001005 The resource not found by path.

示例:

try {
  mgr.closeRawFd("test.xml", (error, value) => {
      if (error != null) {
          console.log("error is " + error);
      }
  });
} catch (error) {
  console.error(`callback closeRawFd failed, error code: ${error.code}, message: ${error.message}.`)
}
    
1
2
3
4
5
6
7
8
9
10

closeRawFd8+

closeRawFd(path: string): Promise<void>

用户关闭resources/rawfile目录下rawfile文件的descriptor,使用Promise形式返回。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
path string rawfile文件路径

返回值:

类型 说明
Promise<void> 无返回值

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001005 The resource not found by path.

示例:

try {
  mgr.closeRawFd("test.xml").then(value => {
      let result = value;
  }).catch(error => {
      console.log("closeRawFd promise error is " + error);
  });
} catch (error) {
  console.error(`promise closeRawFd failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9

release7+

release()

用户释放创建的resourceManager。

系统能力:SystemCapability.Global.ResourceManager

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.release();
});
1
2
3

getStringByName9+

getStringByName(resName: string, callback: AsyncCallback<string>): void

用户获取指定资源名称对应的字符串,使用callback形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resName string 资源名称
callback AsyncCallback<string> 异步回调,用于返回获取的字符串

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001003 The resName invalid.
9001004 The resource not found by resName.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getStringByName("test", (error, value) => {
      if (error != null) {
           console.log("error is " + error);
      } else {
          let string = value;
      }
  });
} catch (error) {
  console.error(`callback getStringByName failed, error code: ${error.code}, message: ${error.message}.`)
}

1
2
3
4
5
6
7
8
9
10
11
12

getStringByName9+

getStringByName(resName: string): Promise<string>

用户获取指定资源名称对应的字符串,使用Promise形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resName string 资源名称

返回值:

类型 说明
Promise<string> 资源名称对应的字符串

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001003 The resName invalid.
9001004 The resource not found by resName.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getStringByName("test").then(value => {
      let string = value;
  }).catch(error => {
      console.log("getStringByName promise error is " + error);
  });
} catch (error) {
  console.error(`promise getStringByName failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9

getStringArrayByName9+

getStringArrayByName(resName: string, callback: AsyncCallback<Array<string>>): void

用户获取指定资源名称对应的字符串数组,使用callback形式返回字符串数组。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resName string 资源名称
callback AsyncCallback<Array<string>> 异步回调,用于返回获取的字符串数组

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001003 The resName invalid.
9001004 The resource not found by resName.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getStringArrayByName("test", (error, value) => {
      if (error != null) {
          console.log("error is " + error);
      } else {
          let strArray = value;
      }
  });
} catch (error) {
  console.error(`callback getStringArrayByName failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11

getStringArrayByName9+

getStringArrayByName(resName: string): Promise<Array<string>>

用户获取指定资源名称对应的字符串数组,使用Promise形式返回字符串数组。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resName string 资源名称

返回值:

类型 说明
Promise<Array<string>> 资源名称对应的字符串数组

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001003 The resName invalid.
9001004 The resource not found by resName.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getStringArrayByName("test").then(value => {
      let strArray = value;
  }).catch(error => {
      console.log("getStringArrayByName promise error is " + error);
  });
} catch (error) {
  console.error(`promise getStringArrayByName failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9

getMediaByName9+

getMediaByName(resName: string, callback: AsyncCallback<Uint8Array>): void

用户获取指定资源ID对应的媒体文件内容,使用callback形式返回字节数组。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resName string 资源名称
callback AsyncCallback<Uint8Array> 异步回调,用于返回获取的媒体文件内容

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001003 The resName invalid.
9001004 The resource not found by resName.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getMediaByName("test", (error, value) => {
      if (error != null) {
          console.log("error is " + error);
      } else {
          let media = value;
      }
  });
} catch (error) {
  console.error(`callback getMediaByName failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11

getMediaByName9+

getMediaByName(resName: string): Promise<Uint8Array>

用户获取指定资源名称对应的媒体文件内容,使用Promise形式返回字节数组。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resName string 资源名称

返回值:

类型 说明
Promise<Uint8Array> 资源名称对应的媒体文件内容

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001003 The resName invalid.
9001004 The resource not found by resName.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getMediaByName("test").then(value => {
      let media = value;
  }).catch(error => {
      console.log("getMediaByName promise error is " + error);
  });
} catch (error) {
  console.error(`promise getMediaByName failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9

getMediaBase64ByName9+

getMediaBase64ByName(resName: string, callback: AsyncCallback<string>): void

用户获取指定资源名称对应的图片资源Base64编码,使用callback形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resName string 资源名称
callback AsyncCallback<string> 异步回调,用于返回获取的图片资源Base64编码

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001003 The resName invalid.
9001004 The resource not found by resName.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getMediaBase64ByName("test", (error, value) => {
      if (error != null) {
          console.log("error is " + error);
      } else {
          let media = value;
      }
  });
} catch (error) {
  console.error(`callback getMediaBase64ByName failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11

getMediaBase64ByName9+

getMediaBase64ByName(resName: string): Promise<string>

用户获取指定资源名称对应的图片资源Base64编码,使用Promise形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resName string 资源名称

返回值:

类型 说明
Promise<string> 资源名称对应的图片资源Base64编码

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001003 The resName invalid.
9001004 The resource not found by resName.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getMediaBase64ByName("test").then(value => {
      let media = value;
  }).catch(error => {
      console.log("getMediaBase64ByName promise error is " + error);
  });
} catch (error) {
  console.error(`promise getMediaBase64ByName failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9

getPluralStringByName9+

getPluralStringByName(resName: string, num: number, callback: AsyncCallback<string>): void

根据传入的数量值,获取资源名称对应的字符串资源,使用callback形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resName string 资源名称
num number 数量值
callback AsyncCallback<string> 异步回调,返回根据传入的数量值获取资源名称对应的字符串资源

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001003 The resName invalid.
9001004 The resource not found by resName.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getPluralStringByName("test", 1, (error, value) => {
      if (error != null) {
          console.log("error is " + error);
      } else {
          let str = value;
      }
  });
} catch (error) {
  console.error(`callback getPluralStringByName failed, error code: ${error.code}, message: ${error.message}.`)
}

1
2
3
4
5
6
7
8
9
10
11
12

getPluralStringByName9+

getPluralStringByName(resName: string, num: number): Promise<string>

根据传入的数量值,获取资源名称对应的字符串资源,使用Promise形式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resName string 资源名称
num number 数量值

返回值:

类型 说明
Promise<string> 根据传入的数量值获取资源名称对应的字符串资源

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001003 The resName invalid.
9001004 The resource not found by resName.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getPluralStringByName("test", 1).then(value => {
    let str = value;
  }).catch(error => {
    console.log("getPluralStringByName promise error is " + error);
  });
} catch (error) {
  console.error(`promise getPluralStringByName failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9

getStringSync9+

getStringSync(resId: number): string

用户获取指定资源ID对应的字符串,使用同步方式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值

返回值:

类型 说明
string 资源ID值对应的字符串

示例:

try {
  this.context.resourceManager.getStringSync($r('app.string.test').id);
} catch (error) {
  console.error(`getStringSync failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5

getStringSync9+

getStringSync(resource: Resource): string

用户获取指定resource对象对应的字符串,使用同步方式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resource Resource 资源信息

返回值:

类型 说明
string resource对象对应的字符串

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.string.test').id
};
try {
  this.context.resourceManager.getStringSync(resource);
} catch (error) {
  console.error(`getStringSync failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10

getStringByNameSync9+

getStringByNameSync(resName: string): string

用户获取指定资源名称对应的字符串,使用同步方式返回字符串。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resName string 资源名称

返回值:

类型 说明
string 资源名称对应的字符串

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001003 The resName invalid.
9001004 The resource not found by resName.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getStringByNameSync("test");
} catch (error) {
  console.error(`getStringByNameSync failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5

getBoolean9+

getBoolean(resId: number): boolean

使用同步方式,返回获取指定资源ID对应的布尔结果。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值

返回值:

类型 说明
boolean 资源ID值对应的布尔结果

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getBoolean($r('app.boolean.boolean_test').id);
} catch (error) {
  console.error(`getBoolean failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5

getBoolean9+

getBoolean(resource: Resource): boolean

使用同步方式,返回获取指定resource对象对应的布尔结果。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resource Resource 资源信息

返回值:

类型 说明
boolean resource对象对应的布尔结果

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.boolean.boolean_test').id
};
try {
  this.context.resourceManager.getBoolean(resource);
} catch (error) {
  console.error(`getBoolean failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10

getBooleanByName9+

getBooleanByName(resName: string): boolean

使用同步方式,返回获取指定资源名称对应的布尔结果

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resName string 资源名称

返回值:

类型 说明
boolean 资源名称对应的布尔结果

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001003 The resName invalid.
9001004 The resource not found by resName.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getBooleanByName("boolean_test");
} catch (error) {
  console.error(`getBooleanByName failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5

getNumber9+

getNumber(resId: number): number

用户获取指定资源ID对应的integer数值或者float数值,使用同步方式返回资源对应的数值。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值

返回值:

类型 说明
number 资源ID值对应的数值

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getNumber($r('app.integer.integer_test').id);
} catch (error) {
  console.error(`getNumber failed, error code: ${error.code}, message: ${error.message}.`)
}

try {
  this.context.resourceManager.getNumber($r('app.float.float_test').id);
} catch (error) {
  console.error(`getNumber failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11

getNumber9+

getNumber(resource: Resource): number

用户获取指定resource对象对应的integer数值或者float数值,使用同步方式返回资源对应的数值。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resource Resource 资源信息

返回值:

类型 说明
number resource对象对应的数值

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001001 The resId invalid.
9001002 The resource not found by resId.
9001006 The resource re-ref too much.

示例:

let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.integer.integer_test').id
};
try {
  this.context.resourceManager.getNumber(resource);
} catch (error) {
  console.error(`getNumber failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10

getNumberByName9+

getNumberByName(resName: string): number

用户获取指定资源名称对应的integer数值或者float数值,使用同步方式资源对应的数值。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resName string 资源名称

返回值:

类型 说明
number 资源名称对应的数值

以下错误码的详细介绍请参见资源管理错误码

错误码ID 错误信息
9001003 The resName invalid.
9001004 The resource not found by resName.
9001006 The resource re-ref too much.

示例:

try {
  this.context.resourceManager.getNumberByName("integer_test");
} catch (error) {
  console.error(`getNumberByName failed, error code: ${error.code}, message: ${error.message}.`)
}

try {
  this.context.resourceManager.getNumberByName("float_test");
} catch (error) {
  console.error(`getNumberByName failed, error code: ${error.code}, message: ${error.message}.`)
}
1
2
3
4
5
6
7
8
9
10
11

getString(deprecated)

getString(resId: number, callback: AsyncCallback<string>): void

用户获取指定资源ID对应的字符串,使用callback形式返回字符串。

从API version 9开始不再维护,建议使用getStringValue代替。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值
callback AsyncCallback<string> 异步回调,用于返回获取的字符串

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getString($r('app.string.test').id, (error, value) => {
        if (error != null) {
            console.log("error is " + error);
        } else {
            let str = value;
        }
    });
});
1
2
3
4
5
6
7
8
9

getString(deprecated)

getString(resId: number): Promise<string>

用户获取指定资源ID对应的字符串,使用Promise形式返回字符串。

从API version 9开始不再维护,建议使用getStringValue代替。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值

返回值:

类型 说明
Promise<string> 资源ID值对应的字符串

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getString($r('app.string.test').id).then(value => {
        let str = value;
    }).catch(error => {
        console.log("getstring promise error is " + error);
    });
});
1
2
3
4
5
6
7

getStringArray(deprecated)

getStringArray(resId: number, callback: AsyncCallback<Array<string>>): void

用户获取指定资源ID对应的字符串数组,使用callback形式返回字符串数组。

从API version 9开始不再维护,建议使用getStringArrayValue代替。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值
callback AsyncCallback<Array<string>> 异步回调,用于返回获取的字符串数组

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getStringArray($r('app.strarray.test').id, (error, value) => {
        if (error != null) {
            console.log("error is " + error);
        } else {
            let strArray = value;
        }
    });
});
1
2
3
4
5
6
7
8
9

getStringArray(deprecated)

getStringArray(resId: number): Promise<Array<string>>

用户获取指定资源ID对应的字符串数组,使用Promise形式返回字符串数组。

从API version 9开始不再维护,建议使用getStringArrayValue代替。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值

返回值:

类型 说明
Promise<Array<string>> 资源ID值对应的字符串数组

示例:

resourceManager.getResourceManager((error, mgr) => {
     mgr.getStringArray($r('app.strarray.test').id).then(value => {
        let strArray = value;
    }).catch(error => {
        console.log("getStringArray promise error is " + error);
    });
});
1
2
3
4
5
6
7

getMedia(deprecated)

getMedia(resId: number, callback: AsyncCallback<Uint8Array>): void

用户获取指定资源ID对应的媒体文件内容,使用callback形式返回字节数组。

从API version 9开始不再维护,建议使用getMediaContent代替。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值
callback AsyncCallback<Uint8Array> 异步回调,用于返回获取的媒体文件内容

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getMedia($r('app.media.test').id, (error, value) => {
        if (error != null) {
            console.log("error is " + error);
        } else {
            let media = value;
        }
    });
});
1
2
3
4
5
6
7
8
9

getMedia(deprecated)

getMedia(resId: number): Promise<Uint8Array>

用户获取指定资源ID对应的媒体文件内容,使用Promise形式返回字节数组。

从API version 9开始不再维护,建议使用getMediaContent代替。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值

返回值:

类型 说明
Promise<Uint8Array> 资源ID值对应的媒体文件内容

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getMedia($r('app.media.test').id).then(value => {
        let media = value;
    }).catch(error => {
        console.log("getMedia promise error is " + error);
    });
});
1
2
3
4
5
6
7

getMediaBase64(deprecated)

getMediaBase64(resId: number, callback: AsyncCallback<string>): void

用户获取指定资源ID对应的图片资源Base64编码,使用callback形式返回字符串。

从API version 9开始不再维护,建议使用getMediaContentBase64代替。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值
callback AsyncCallback<string> 异步回调,用于返回获取的图片资源Base64编码

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getMediaBase64($r('app.media.test').id, (error, value) => {
        if (error != null) {
            console.log("error is " + error);
        } else {
            let media = value;
        }
    });
});
1
2
3
4
5
6
7
8
9

getMediaBase64(deprecated)

getMediaBase64(resId: number): Promise<string>

用户获取指定资源ID对应的图片资源Base64编码,使用Promise形式返回字符串。

从API version 9开始不再维护,建议使用getMediaContentBase64代替。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值

返回值:

类型 说明
Promise<string> 资源ID值对应的图片资源Base64编码

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getMediaBase64($r('app.media.test').id).then(value => {
        let media = value;
    }).catch(error => {
        console.log("getMediaBase64 promise error is " + error);
    });
});
1
2
3
4
5
6
7

getPluralString(deprecated)

getPluralString(resId: number, num: number): Promise<string>

根据指定数量获取对指定ID字符串表示的单复数字符串,使用Promise形式返回字符串。

从API version 9开始不再维护,建议使用getPluralStringValue代替。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值
num number 数量值

返回值:

类型 说明
Promise<string> 根据提供的数量获取对应ID字符串表示的单复数字符串

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getPluralString($r("app.plural.test").id, 1).then(value => {
        let str = value;
    }).catch(error => {
        console.log("getPluralString promise error is " + error);
    });
});
1
2
3
4
5
6
7

getPluralString(deprecated)

getPluralString(resId: number, num: number, callback: AsyncCallback<string>): void

根据指定数量获取指定ID字符串表示的单复数字符串,使用callback形式返回字符串。

从API version 9开始不再维护,建议使用getPluralStringValue代替。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
resId number 资源ID值
num number 数量值
callback AsyncCallback<string> 异步回调,返回根据指定数量获取指定ID字符串表示的单复数字符串

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getPluralString($r("app.plural.test").id, 1, (error, value) => {
        if (error != null) {
            console.log("error is " + error);
        } else {
            let str = value;
        }
    });
});
1
2
3
4
5
6
7
8
9

getRawFile(deprecated)

getRawFile(path: string, callback: AsyncCallback<Uint8Array>): void

用户获取resources/rawfile目录下对应的rawfile文件内容,使用callback形式返回字节数组。

从API version 9开始不再维护,建议使用getRawFileContent代替。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
path string rawfile文件路径
callback AsyncCallback<Uint8Array> 异步回调,用于返回获取的rawfile文件内容

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getRawFile("test.xml", (error, value) => {
        if (error != null) {
            console.log("error is " + error);
        } else {
            let rawFile = value;
        }
    });
});
1
2
3
4
5
6
7
8
9

getRawFile(deprecated)

getRawFile(path: string): Promise<Uint8Array>

用户获取resources/rawfile目录下对应的rawfile文件内容,使用Promise形式返回字节数组。

从API version 9开始不再维护,建议使用getRawFileContent代替。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
path string rawfile文件路径

返回值:

类型 说明
Promise<Uint8Array> rawfile文件内容

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getRawFile("test.xml").then(value => {
        let rawFile = value;
    }).catch(error => {
        console.log("getRawFile promise error is " + error);
    });
});
1
2
3
4
5
6
7

getRawFileDescriptor(deprecated)

getRawFileDescriptor(path: string, callback: AsyncCallback<RawFileDescriptor>): void

用户获取resources/rawfile目录下对应rawfile文件的descriptor,使用callback形式返回。

从API version 9开始不再维护,建议使用getRawFd代替。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
path string rawfile文件路径
callback AsyncCallback<RawFileDescriptor> 异步回调,用于返回获取的rawfile文件的descriptor

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getRawFileDescriptor("test.xml", (error, value) => {
        if (error != null) {
            console.log("error is " + error);
        } else {
            let fd = value.fd;
            let offset = value.offset;
            let length = value.length;
        }
    });
});
1
2
3
4
5
6
7
8
9
10
11

getRawFileDescriptor(deprecated)

getRawFileDescriptor(path: string): Promise<RawFileDescriptor>

用户获取resources/rawfile目录下对应rawfile文件的descriptor,使用Promise形式返回。

从API version 9开始不再维护,建议使用getRawFd代替。

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名 类型 必填 说明
path string rawfile文件路径

返回值:

类型 说明
Promise<RawFileDescriptor> rawfile文件descriptor

示例:

resourceManager.getResourceManager((error, mgr) => {
    mgr.getRawFileDescriptor("test.xml").then(value => {
        let fd = value.fd;
        let offset = value.offset;
        let length = value.length;
    }).catch(error => {
        console.log("getRawFileDescriptor promise error is " + error);
    });
});
1
2
3
4
5
6
7
8
9