资源管理

2024-01-23 15:52 更新

资源管理模块,根据当前configuration:语言、区域、横竖屏、Mcc(移动国家码)和Mnc(移动网络码)、Device capability(设备类型)、Density(分辨率)提供获取应用资源信息读取接口。

说明

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

导入模块

  1. import resourceManager from '@ohos.resourceManager';

使用说明

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

Stage模型下Context的引用方法请参考Stage模型的Context详细介绍

  1. import UIAbility from '@ohos.app.ability.UIAbility';
  2. export default class EntryAbility extends UIAbility {
  3. onWindowStageCreate(windowStage) {
  4. let context = this.context;
  5. let resourceManager = context.resourceManager;
  6. }
  7. }

resourceManager.getResourceManager

getResourceManager(callback: AsyncCallback<ResourceManager>): void

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

callback

AsyncCallback<ResourceManager>

callback方式返回ResourceManager对象

示例:

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

注:示例代码中的0x1000000表示资源对应的id, 其可在编译后的文件ResourceTable.txt中找到。

resourceManager.getResourceManager

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

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

bundleName

string

指定应用的Bundle名称

callback

AsyncCallback<ResourceManager>

callback方式返回ResourceManager对象

示例:

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

resourceManager.getResourceManager

getResourceManager(): Promise<ResourceManager>

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

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

系统能力:SystemCapability.Global.ResourceManager

返回值:

类型

说明

Promise<ResourceManager>

Promise方式返回资源管理对象

示例:

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

注:示例代码中的0x1000000表示资源对应的id, 其可在编译后的文件ResourceTable.txt中找到。

resourceManager.getResourceManager

getResourceManager(bundleName: string): Promise<ResourceManager>

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

bundleName

string

指定应用的Bundle名称

返回值:

类型

说明

Promise<ResourceManager>

Promise方式返回的资源管理对象

示例:

  1. resourceManager.getResourceManager("com.example.myapplication").then(mgr => {
  2. }).catch(error => {
  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

当前系统语言

示例:

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

DeviceCapability

表示设备支持的能力。

系统能力:SystemCapability.Global.ResourceManager

参数:

名称

类型

可读

可写

说明

screenDensity

ScreenDensity

当前设备屏幕密度

deviceType

DeviceType

当前设备类型

示例:

  1. resourceManager.getResourceManager((error, mgr) => {
  2. mgr.getDeviceCapability((error, value) => {
  3. let screenDensity = value.screenDensity;
  4. let deviceType = value.deviceType;
  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。

  • 对于本应用包资源,通过指定资源ID或资源名称进行访问。对于应用内跨包资源,通过指定resource对象或对应包的context进行访问,通过对应包context访问跨包资源与访问本应用包资源的逻辑一致,推荐开发者使用对应包的context方法。

getStringValue9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resId

number

资源ID值

callback

AsyncCallback<string>

异步回调,用于返回获取的字符串

错误码:

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

错误码ID

错误信息

9001001

If the module resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例Stage:

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

getStringValue9+

getStringValue(resId: number): Promise<string>

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resId

number

资源ID值

返回值:

类型

说明

Promise<string>

资源ID值对应的字符串

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

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

getStringValue9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resource

Resource

资源信息

callback

AsyncCallback<string>

异步回调,用于返回获取的字符串

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

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

getStringValue9+

getStringValue(resource: Resource): Promise<string>

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resource

Resource

资源信息

返回值:

类型

说明

Promise<string>

resource对象对应的字符串

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

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

getStringArrayValue9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resId

number

资源ID值

callback

AsyncCallback<Array<string>>

异步回调,用于返回获取的字符串数组

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

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

getStringArrayValue9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resId

number

资源ID值

返回值:

类型

说明

Promise<Array<string>>

资源ID值对应的字符串数组

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

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

getStringArrayValue9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resource

Resource

资源信息

callback

AsyncCallback<Array<string>>

异步回调,用于返回获取的字符串数组

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

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

getStringArrayValue9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resource

Resource

资源信息

返回值:

类型

说明

Promise<Array<string>>

resource对象对应的字符串数组

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

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

getMediaContent9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resId

number

资源ID值

callback

AsyncCallback<Uint8Array>

异步回调,用于返回获取的媒体文件内容

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

示例:

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

getMediaContent9+

getMediaContent(resId: number): Promise<Uint8Array>

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resId

number

资源ID值

返回值:

类型

说明

Promise<Uint8Array>

资源ID值对应的媒体文件内容

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

示例:

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

getMediaContent9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resource

Resource

资源信息

callback

AsyncCallback<Uint8Array>

异步回调,用于返回获取的媒体文件内容

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

示例:

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

getMediaContent9+

getMediaContent(resource: Resource): Promise<Uint8Array>

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resource

Resource

资源信息

返回值:

类型

说明

Promise<Uint8Array>

resource对象对应的媒体文件内容

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

示例:

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

getMediaContentBase649+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resId

number

资源ID值

callback

AsyncCallback<string>

异步回调,用于返回获取的图片资源Base64编码

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

示例:

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

getMediaContentBase649+

getMediaContentBase64(resId: number): Promise<string>

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resId

number

资源ID值

返回值:

类型

说明

Promise<string>

资源ID值对应的图片资源Base64编码

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

示例:

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

getMediaContentBase649+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resource

Resource

资源信息

callback

AsyncCallback<string>

异步回调,用于返回获取的图片资源Base64编码

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

示例:

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

getMediaContentBase649+

getMediaContentBase64(resource: Resource): Promise<string>

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resource

Resource

资源信息

返回值:

类型

说明

Promise<string>

resource对象对应的图片资源Base64编码

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

示例:

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

getConfiguration

getConfiguration(callback: AsyncCallback<Configuration>): void

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

callback

AsyncCallback<Configuration>

异步回调,用于返回设备的Configuration

示例:

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

getConfiguration

getConfiguration(): Promise<Configuration>

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

系统能力:SystemCapability.Global.ResourceManager

返回值:

类型

说明

Promise<Configuration>

设备的Configuration

示例:

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

getDeviceCapability

getDeviceCapability(callback: AsyncCallback<DeviceCapability>): void

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

callback

AsyncCallback<DeviceCapability>

异步回调,用于返回设备的DeviceCapability

示例:

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

getDeviceCapability

getDeviceCapability(): Promise<DeviceCapability>

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

系统能力:SystemCapability.Global.ResourceManager

返回值:

类型

说明

Promise<DeviceCapability>

设备的DeviceCapability

示例:

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

getPluralStringValue9+

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

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

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

getPluralStringValue9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resId

number

资源ID值

num

number

数量值

返回值:

类型

说明

Promise<string>

根据提供的数量获取对应ID字符串表示的单复数字符串

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

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

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

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

getPluralString9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resource

Resource

资源信息

num

number

数量值

返回值:

类型

说明

Promise<string>

根据提供的数量获取对应resource对象表示的单复数字符串

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

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

If the resource not found by path.

示例:

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

getRawFileContent9+

getRawFileContent(path: string): Promise<Uint8Array>

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

path

string

rawfile文件路径

返回值:

类型

说明

Promise<Uint8Array>

rawfile文件内容

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

错误码:

错误码ID

错误信息

9001005

If the resource not found by path.

示例:

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

getRawFd9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

path

string

rawfile文件路径

callback

AsyncCallback<RawFileDescriptor>

异步回调,用于返回获取的rawfile文件的descriptor

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

错误码:

错误码ID

错误信息

9001005

If the resource not found by path.

示例:

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

getRawFd9+

getRawFd(path: string): Promise<RawFileDescriptor>

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

path

string

rawfile文件路径

返回值:

类型

说明

Promise<RawFileDescriptor>

rawfile文件descriptor

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

错误码:

错误码ID

错误信息

9001005

If the resource not found by path.

示例:

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

closeRawFileDescriptor8+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

path

string

rawfile文件路径

callback

AsyncCallback<void>

异步回调

示例:

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

closeRawFileDescriptor8+

closeRawFileDescriptor(path: string): Promise<void>

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

path

string

rawfile文件路径

返回值:

类型

说明

Promise<void>

无返回值

示例:

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

示例:

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

closeRawFd9+

closeRawFd(path: string): Promise<void>

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

path

string

rawfile文件路径

返回值:

类型

说明

Promise<void>

无返回值

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

错误码:

错误码ID

错误信息

9001005

If the resource not found by path.

示例:

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

release7+

release()

用户释放创建的resourceManager。

系统能力:SystemCapability.Global.ResourceManager

示例:

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

getStringByName9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resName

string

资源名称

callback

AsyncCallback<string>

异步回调,用于返回获取的字符串

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

错误码:

错误码ID

错误信息

9001003

If the resName invalid.

9001004

If the resource not found by resName.

9001006

If the resource re-ref too much.

示例:

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

getStringByName9+

getStringByName(resName: string): Promise<string>

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resName

string

资源名称

返回值:

类型

说明

Promise<string>

资源名称对应的字符串

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

错误码:

错误码ID

错误信息

9001003

If the resName invalid.

9001004

If the resource not found by resName.

9001006

If the resource re-ref too much.

示例:

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

getStringArrayByName9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resName

string

资源名称

callback

AsyncCallback<Array<string>>

异步回调,用于返回获取的字符串数组

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

错误码:

错误码ID

错误信息

9001003

If the resName invalid.

9001004

If the resource not found by resName.

9001006

If the resource re-ref too much.

示例:

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

getStringArrayByName9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resName

string

资源名称

返回值:

类型

说明

Promise<Array<string>>

资源名称对应的字符串数组

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

错误码:

错误码ID

错误信息

9001003

If the resName invalid.

9001004

If the resource not found by resName.

9001006

If the resource re-ref too much.

示例:

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

getMediaByName9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resName

string

资源名称

callback

AsyncCallback<Uint8Array>

异步回调,用于返回获取的媒体文件内容

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

错误码:

错误码ID

错误信息

9001003

If the resName invalid.

9001004

If the resource not found by resName.

9001006

If the resource re-ref too much.

示例:

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

getMediaByName9+

getMediaByName(resName: string): Promise<Uint8Array>

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resName

string

资源名称

返回值:

类型

说明

Promise<Uint8Array>

资源名称对应的媒体文件内容

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

错误码:

错误码ID

错误信息

9001003

If the resName invalid.

9001004

If the resource not found by resName.

9001006

If the resource re-ref too much.

示例:

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

getMediaBase64ByName9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resName

string

资源名称

callback

AsyncCallback<string>

异步回调,用于返回获取的图片资源Base64编码

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

错误码:

错误码ID

错误信息

9001003

If the resName invalid.

9001004

If the resource not found by resName.

9001006

If the resource re-ref too much.

示例:

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

getMediaBase64ByName9+

getMediaBase64ByName(resName: string): Promise<string>

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resName

string

资源名称

返回值:

类型

说明

Promise<string>

资源名称对应的图片资源Base64编码

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

错误码:

错误码ID

错误信息

9001003

If the resName invalid.

9001004

If the resource not found by resName.

9001006

If the resource re-ref too much.

示例:

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

getPluralStringByName9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resName

string

资源名称

num

number

数量值

callback

AsyncCallback<string>

异步回调,返回根据传入的数量值获取资源名称对应的字符串资源

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

错误码:

错误码ID

错误信息

9001003

If the resName invalid.

9001004

If the resource not found by resName.

9001006

If the resource re-ref too much.

示例:

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

getPluralStringByName9+

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resName

string

资源名称

num

number

数量值

返回值:

类型

说明

Promise<string>

根据传入的数量值获取资源名称对应的字符串资源

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

错误码:

错误码ID

错误信息

9001003

If the resName invalid.

9001004

If the resource not found by resName.

9001006

If the resource re-ref too much.

示例:

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

getStringSync9+

getStringSync(resId: number): string

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resId

number

资源ID值

返回值:

类型

说明

string

资源ID值对应的字符串

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

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

getStringSync9+

getStringSync(resource: Resource): string

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resource

Resource

资源信息

返回值:

类型

说明

string

resource对象对应的字符串

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

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

getStringByNameSync9+

getStringByNameSync(resName: string): string

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resName

string

资源名称

返回值:

类型

说明

string

资源名称对应的字符串

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

错误码:

错误码ID

错误信息

9001003

If the resName invalid.

9001004

If the resource not found by resName.

9001006

If the resource re-ref too much.

示例:

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

getBoolean9+

getBoolean(resId: number): boolean

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resId

number

资源ID值

返回值:

类型

说明

boolean

资源ID值对应的布尔结果

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

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

getBoolean9+

getBoolean(resource: Resource): boolean

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resource

Resource

资源信息

返回值:

类型

说明

boolean

resource对象对应的布尔结果

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

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

getBooleanByName9+

getBooleanByName(resName: string): boolean

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resName

string

资源名称

返回值:

类型

说明

boolean

资源名称对应的布尔结果

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

错误码:

错误码ID

错误信息

9001003

If the resName invalid.

9001004

If the resource not found by resName.

9001006

If the resource re-ref too much.

示例:

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

getNumber9+

getNumber(resId: number): number

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resId

number

资源ID值

返回值:

类型

说明

number

资源ID值对应的数值。Integer对应的是原数值,float对应的是真实像素点值,具体参考示例代码。

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

  1. try {
  2. this.context.resourceManager.getNumber($r('app.integer.integer_test').id); // integer对应返回的是原数值
  3. } catch (error) { console.error(`getNumber failed, error code: ${error.code}, message: ${error.message}.`)
  4. }
  5. try {
  6. this.context.resourceManager.getNumber($r('app.float.float_test').id); // float对应返回的是真实像素点值
  7. } catch (error) { console.error(`getNumber failed, error code: ${error.code}, message: ${error.message}.`)
  8. }

getNumber9+

getNumber(resource: Resource): number

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resource

Resource

资源信息

返回值:

类型

说明

number

resource对象对应的数值。Integer对应的是原数值,float对应的是真实像素点值,具体参考示例代码。

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

错误码:

错误码ID

错误信息

9001001

If the resId invalid.

9001002

If the resource not found by resId.

9001006

If the resource re-ref too much.

示例:

  1. let resource = {
  2. bundleName: "com.example.myapplication",
  3. moduleName: "entry",
  4. id: $r('app.integer.integer_test').id};
  5. try {
  6. this.context.resourceManager.getNumber(resource);// integer对应返回的是原数值, float对应返回的是真实像素点值
  7. } catch (error) {
  8. console.error(`getNumber failed, error code: ${error.code}, message: ${error.message}.`)
  9. }

getNumberByName9+

getNumberByName(resName: string): number

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resName

string

资源名称

返回值:

类型

说明

number

资源名称对应的数值

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

错误码:

错误码ID

错误信息

9001003

If the resName invalid.

9001004

If the resource not found by resName.

9001006

If the resource re-ref too much.

示例:

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

getString(deprecated)

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

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

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

系统能力:SystemCapability.Global.ResourceManager

参数:

参数名

类型

必填

说明

resId

number

资源ID值

callback

AsyncCallback<string>

异步回调,用于返回获取的字符串

示例:

  1. resourceManager.getResourceManager((error, mgr) => {
  2. mgr.getString($r('app.string.test').id, (error, value) => {
  3. if (error != null) {
  4. console.log("error is " + error);
  5. } else {
  6. let str = value;
  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值对应的字符串

示例:

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

异步回调,用于返回获取的字符串数组

示例:

  1. resourceManager.getResourceManager((error, mgr) => {
  2. mgr.getStringArray($r('app.strarray.test').id, (error, value) => {
  3. if (error != null) {
  4. console.log("error is " + error);
  5. } else {
  6. let strArray = value;
  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值对应的字符串数组

示例:

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

异步回调,用于返回获取的媒体文件内容

示例:

  1. resourceManager.getResourceManager((error, mgr) => {
  2. mgr.getMedia($r('app.media.test').id, (error, value) => {
  3. if (error != null) {
  4. console.log("error is " + error);
  5. } else {
  6. let media = value;
  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值对应的媒体文件内容

示例:

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

示例:

  1. resourceManager.getResourceManager((error, mgr) => {
  2. mgr.getMediaBase64($r('app.media.test').id, (error, value) => {
  3. if (error != null) {
  4. console.log("error is " + error);
  5. } else {
  6. let media = value;
  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编码

示例:

  1. resourceManager.getResourceManager((error, mgr) => {
  2. mgr.getMediaBase64($r('app.media.test').id).then(value => {
  3. let media = value;
  4. }).catch(error => {
  5. console.log("getMediaBase64 promise error is " + error);
  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字符串表示的单复数字符串

示例:

  1. resourceManager.getResourceManager((error, mgr) => {
  2. mgr.getPluralString($r("app.plural.test").id, 1).then(value => {
  3. let str = value;
  4. }).catch(error => {
  5. console.log("getPluralString promise error is " + error);
  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字符串表示的单复数字符串

示例:

  1. resourceManager.getResourceManager((error, mgr) => {
  2. mgr.getPluralString($r("app.plural.test").id, 1, (error, value) => {
  3. if (error != null) {
  4. console.log("error is " + error);
  5. } else {
  6. let str = value;
  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文件内容

示例:

  1. resourceManager.getResourceManager((error, mgr) => {
  2. mgr.getRawFile("test.xml", (error, value) => {
  3. if (error != null) {
  4. console.log("error is " + error);
  5. } else {
  6. let rawFile = value;
  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文件内容

示例:

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

示例:

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

示例:

  1. resourceManager.getResourceManager((error, mgr) => {
  2. mgr.getRawFileDescriptor("test.xml").then(value => {
  3. let fd = value.fd;
  4. let offset = value.offset;
  5. let length = value.length;
  6. }).catch(error => {
  7. console.log("getRawFileDescriptor promise error is " + error);
  8. });
以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号