js-apis-resource-manager.md 154.8 KB
Newer Older
Z
zengyawen 已提交
1
# @ohos.resourceManager (资源管理)
Z
zengyawen 已提交
2

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

5 6
> **说明:**
>
W
wplan1 已提交
7
> 本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
Z
zengyawen 已提交
8

Z
zengyawen 已提交
9 10

## 导入模块
Z
zengyawen 已提交
11

H
HelloCrease 已提交
12
```js
Z
zengyawen 已提交
13 14 15
import resourceManager from '@ohos.resourceManager';
```

H
huangjie 已提交
16 17
## 使用说明

H
huangjie 已提交
18
从API Version9开始,Stage模型通过context获取resourceManager对象的方式后,可直接调用其内部获取资源的接口,无需再导入包。此方式FA模型不适用,FA模型还需要先导入包,再调用[getResourceManager](#resourcemanagergetresourcemanager)接口获取资源对象。
Z
zengyawen 已提交
19
Stage模型下Context的引用方法请参考[Stage模型的Context详细介绍](../../application-models/application-context-stage.md)
H
huangjie 已提交
20

H
HelloCrease 已提交
21
```ts
22 23 24
import UIAbility from '@ohos.app.ability.UIAbility';

export default class EntryAbility extends UIAbility {
25 26 27 28
  onWindowStageCreate(windowStage) {
    let context = this.context;
    let resourceManager = context.resourceManager;
  }
F
fangyunzhong 已提交
29
}
H
huangjie 已提交
30 31
```

Z
zengyawen 已提交
32 33 34
## resourceManager.getResourceManager

getResourceManager(callback: AsyncCallback<ResourceManager>): void
Z
zengyawen 已提交
35 36 37

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

V
VictoriaGuo 已提交
38 39
**系统能力**:SystemCapability.Global.ResourceManager

Z
zt147369 已提交
40 41
**模型约束**:此接口仅可在FA模型下使用。

H
HelloCrease 已提交
42
**参数:** 
H
huangjie 已提交
43

H
HelloCrease 已提交
44 45 46
| 参数名      | 类型                                       | 必填   | 说明                            |
| -------- | ---------------------------------------- | ---- | ----------------------------- |
| callback | AsyncCallback<[ResourceManager](#resourcemanager)> | 是    | callback方式返回ResourceManager对象 |
Z
zengyawen 已提交
47

H
HelloCrease 已提交
48
**示例:** 
H
HelloCrease 已提交
49
  ```js
Z
zengyawen 已提交
50
  resourceManager.getResourceManager((error, mgr) => {
51 52 53 54 55
    if (error != null) {
      console.log("error is " + error);
      return;
    }
    mgr.getStringValue(0x1000000, (error, value) => {
Z
zengyawen 已提交
56
      if (error != null) {
57 58 59
        console.log("error is " + error);
      } else {
        let str = value;
Z
zengyawen 已提交
60
      }
61
    });
Z
zengyawen 已提交
62 63
  });
  ```
H
huangjie 已提交
64
注:示例代码中的0x1000000表示资源对应的id, 其可在编译后的文件ResourceTable.txt中找到。
Z
zengyawen 已提交
65 66 67 68 69


## resourceManager.getResourceManager

getResourceManager(bundleName: string, callback: AsyncCallback<ResourceManager>): void
Z
zengyawen 已提交
70 71 72

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

V
VictoriaGuo 已提交
73 74
**系统能力**:SystemCapability.Global.ResourceManager

Z
zt147369 已提交
75 76
**模型约束**:此接口仅可在FA模型下使用。

H
HelloCrease 已提交
77
**参数:** 
H
huangjie 已提交
78

H
HelloCrease 已提交
79 80 81 82
| 参数名        | 类型                                       | 必填   | 说明                            |
| ---------- | ---------------------------------------- | ---- | ----------------------------- |
| bundleName | string                                   | 是    | 指定应用的Bundle名称                 |
| callback   | AsyncCallback<[ResourceManager](#resourcemanager)> | 是    | callback方式返回ResourceManager对象 |
Z
zengyawen 已提交
83

H
HelloCrease 已提交
84
**示例:** 
H
HelloCrease 已提交
85
  ```js
Z
zengyawen 已提交
86 87 88 89 90 91 92 93
  resourceManager.getResourceManager("com.example.myapplication", (error, mgr) => {
  });
  ```


## resourceManager.getResourceManager

getResourceManager(): Promise<ResourceManager>
Z
zengyawen 已提交
94 95 96

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

V
VictoriaGuo 已提交
97 98
**系统能力**:SystemCapability.Global.ResourceManager

Z
zt147369 已提交
99 100
**模型约束**:此接口仅可在FA模型下使用。

H
huangjie 已提交
101 102
**返回值:**

H
HelloCrease 已提交
103 104 105
| 类型                                       | 说明                |
| ---------------------------------------- | ----------------- |
| Promise<[ResourceManager](#resourcemanager)> | Promise方式返回资源管理对象 |
Z
zengyawen 已提交
106

H
HelloCrease 已提交
107
**示例:** 
H
HelloCrease 已提交
108
  ```js
Z
zengyawen 已提交
109
  resourceManager.getResourceManager().then(mgr => {
110 111 112 113 114 115 116
    mgr.getStringValue(0x1000000, (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      } else {
        let str = value;
      }
    });
Z
zengyawen 已提交
117
  }).catch(error => {
118
    console.log("error is " + error);
Z
zengyawen 已提交
119 120
  });
  ```
H
huangjie 已提交
121
注:示例代码中的0x1000000表示资源对应的id, 其可在编译后的文件ResourceTable.txt中找到。
Z
zengyawen 已提交
122 123 124 125 126


## resourceManager.getResourceManager

getResourceManager(bundleName: string): Promise<ResourceManager>
Z
zengyawen 已提交
127 128 129

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

V
VictoriaGuo 已提交
130 131
**系统能力**:SystemCapability.Global.ResourceManager

Z
zt147369 已提交
132 133
**模型约束**:此接口仅可在FA模型下使用。

H
HelloCrease 已提交
134
**参数:** 
H
huangjie 已提交
135

H
HelloCrease 已提交
136 137 138
| 参数名        | 类型     | 必填   | 说明            |
| ---------- | ------ | ---- | ------------- |
| bundleName | string | 是    | 指定应用的Bundle名称 |
Z
zengyawen 已提交
139

H
huangjie 已提交
140 141
**返回值:**

H
HelloCrease 已提交
142 143 144
| 类型                                       | 说明                 |
| ---------------------------------------- | ------------------ |
| Promise<[ResourceManager](#resourcemanager)> | Promise方式返回的资源管理对象 |
Z
zengyawen 已提交
145

H
HelloCrease 已提交
146
**示例:** 
H
HelloCrease 已提交
147
  ```js
Z
zengyawen 已提交
148 149 150 151 152
  resourceManager.getResourceManager("com.example.myapplication").then(mgr => {
  }).catch(error => {
  });
  ```

153
## resourceManager.getSystemResourceManager<sup>10+</sup>
154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178

getSystemResourceManager(): ResourceManager

获取系统资源管理对象,返回系统资源的ResourceManager对象。

**系统能力**:SystemCapability.Global.ResourceManager

**返回值:**

| 类型                                       | 说明                 |
| ---------------------------------------- | ------------------ |
| Resourcemanager | 返回系统资源的管理对象 |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001009  | If application can't access system resource.                       |

**示例:**
  ```js
import resourceManager from '@ohos.resourceManager';

179
  try {
180 181
    let systemResourceManager = resourceManager.getSystemResourceManager();
    systemResourceManager.getStringValue($r('sys.string.ohos_lab_vibrate').id).then(value => {
182
      let str = value;
183
    }).catch(error => {
184
      console.log("systemResourceManager getStringValue promise error is " + error);
185
    });
186
  } catch (error) {
Z
zt147369 已提交
187
    console.error(`systemResourceManager getStringValue failed, error code: ${error.code}, message: ${error.message}.`);
188
  }
189 190 191
  ```


Z
zengyawen 已提交
192
## Direction
Z
zengyawen 已提交
193 194 195

用于表示设备屏幕方向。

H
HelloCrease 已提交
196
**系统能力**:SystemCapability.Global.ResourceManager
H
HelloCrease 已提交
197

H
huangjie 已提交
198
| 名称                   | 值  | 说明   |
H
HelloCrease 已提交
199 200 201
| -------------------- | ---- | ---- |
| DIRECTION_VERTICAL   | 0    | 竖屏   |
| DIRECTION_HORIZONTAL | 1    | 横屏   |
Z
zengyawen 已提交
202 203 204


## DeviceType
Z
zengyawen 已提交
205 206 207

用于表示当前设备类型。

H
HelloCrease 已提交
208
**系统能力**:SystemCapability.Global.ResourceManager
H
HelloCrease 已提交
209

H
huangjie 已提交
210
| 名称                   | 值  | 说明   |
H
HelloCrease 已提交
211 212 213 214 215 216 217
| -------------------- | ---- | ---- |
| DEVICE_TYPE_PHONE    | 0x00 | 手机   |
| DEVICE_TYPE_TABLET   | 0x01 | 平板   |
| DEVICE_TYPE_CAR      | 0x02 | 汽车   |
| DEVICE_TYPE_PC       | 0x03 | 电脑   |
| DEVICE_TYPE_TV       | 0x04 | 电视   |
| DEVICE_TYPE_WEARABLE | 0x06 | 穿戴   |
Z
zengyawen 已提交
218 219 220


## ScreenDensity
Z
zengyawen 已提交
221 222 223

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

H
HelloCrease 已提交
224
**系统能力**:SystemCapability.Global.ResourceManager
H
HelloCrease 已提交
225

H
huangjie 已提交
226
| 名称             | 值  | 说明         |
H
HelloCrease 已提交
227 228 229 230 231 232 233
| -------------- | ---- | ---------- |
| SCREEN_SDPI    | 120  | 小规模的屏幕密度   |
| SCREEN_MDPI    | 160  | 中规模的屏幕密度   |
| SCREEN_LDPI    | 240  | 大规模的屏幕密度   |
| SCREEN_XLDPI   | 320  | 特大规模的屏幕密度  |
| SCREEN_XXLDPI  | 480  | 超大规模的屏幕密度  |
| SCREEN_XXXLDPI | 640  | 超特大规模的屏幕密度 |
Z
zengyawen 已提交
234 235 236


## Configuration
Z
zengyawen 已提交
237 238 239

表示当前设备的状态。

H
HelloCrease 已提交
240
**系统能力**:SystemCapability.Global.ResourceManager
H
HelloCrease 已提交
241

H
huangjie 已提交
242
**参数:** 
Z
zengyawen 已提交
243

H
huangjie 已提交
244
| 名称        | 类型                    | 可读   | 可写   | 说明       |
H
HelloCrease 已提交
245 246 247
| --------- | ----------------------- | ---- | ---- | -------- |
| direction | [Direction](#direction) | 是    | 否    | 当前设备屏幕方向 |
| locale    | string                  | 是    | 否    | 当前系统语言   |
Z
zengyawen 已提交
248 249 250


## DeviceCapability
Z
zengyawen 已提交
251 252 253

表示设备支持的能力。

H
HelloCrease 已提交
254
**系统能力**:SystemCapability.Global.ResourceManager
H
HelloCrease 已提交
255

H
huangjie 已提交
256
**参数:**
Z
zengyawen 已提交
257

H
huangjie 已提交
258
| 名称            | 类型                            | 可读   | 可写   | 说明       |
H
HelloCrease 已提交
259 260 261
| ------------- | ------------------------------- | ---- | ---- | -------- |
| screenDensity | [ScreenDensity](#screendensity) | 是    | 否    | 当前设备屏幕密度 |
| deviceType    | [DeviceType](#devicetype)       | 是    | 否    | 当前设备类型   |
Z
zengyawen 已提交
262 263


W
wplan1 已提交
264 265
## RawFileDescriptor<sup>8+</sup>

H
HelloCrease 已提交
266 267 268
表示rawfile的descriptor信息。

**系统能力:** SystemCapability.Global.ResourceManager
W
wplan1 已提交
269

H
huangjie 已提交
270 271 272 273
**参数:**

| 名称     | 类型    | 可读   | 可写  | 说明           |
| ------ | ------  | ---- | ---- | ------------------ |
H
huangjie 已提交
274
| fd     | number  | 是    | 否 | rawfile所在hap的文件描述符 |
H
huangjie 已提交
275 276
| offset | number  | 是    | 否 | rawfile的起始偏移量      |
| length | number  | 是    | 否 | rawfile的文件长度       |
W
wplan1 已提交
277

278
## Resource<sup>9+</sup>
279 280 281 282 283

表示的资源信息。

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

H
huangjie 已提交
284 285 286 287 288 289 290
**参数:**

| 名称         | 类型     | 可读   | 可写  |说明          |
| ---------- | ------ | ----- | ----  | ---------------|
| bundleName | string | 是    | 否 | 应用的bundle名称 |
| moduleName | string | 是    | 否 | 应用的module名称 |
| id         | number | 是    | 否 | 资源的id值      |
291

W
wplan1 已提交
292

Z
zengyawen 已提交
293
## ResourceManager
Z
zengyawen 已提交
294 295 296

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

297 298
> **说明:**
>
Z
zengyawen 已提交
299
> - ResourceManager涉及到的方法,仅限基于TS扩展的声明式开发范式使用。
H
HelloCrease 已提交
300
>
Z
zengyawen 已提交
301 302
> - 资源文件在工程的resources目录中定义,id可通过$r(资源地址).id的方式获取,例如$r('app.string.test').id。

303
### getStringSync<sup>9+</sup>
Z
zengyawen 已提交
304

305
getStringSync(resId: number): string
Z
zengyawen 已提交
306

307
用户获取指定资源ID对应的字符串,使用同步方式返回字符串。
Z
zengyawen 已提交
308

V
VictoriaGuo 已提交
309 310
**系统能力**:SystemCapability.Global.ResourceManager

H
HelloCrease 已提交
311
**参数:** 
H
huangjie 已提交
312

313 314 315 316 317 318 319 320 321
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |

**返回值:**

| 类型     | 说明          |
| ------ | ----------- |
| string | 资源ID值对应的字符串 |
Z
zengyawen 已提交
322

H
huangjie 已提交
323 324 325 326 327 328
**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
329 330 331
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
332

333
**示例:** 
H
HelloCrease 已提交
334
  ```ts
335 336 337 338 339
  try {
    this.context.resourceManager.getStringSync($r('app.string.test').id);
  } catch (error) {
    console.error(`getStringSync failed, error code: ${error.code}, message: ${error.message}.`);
  }
Z
zengyawen 已提交
340 341
  ```

342
### getStringSync<sup>10+</sup>
Z
zengyawen 已提交
343

344
getStringSync(resId: number, ...args: Array<string | number>): string
Z
zengyawen 已提交
345

346
用户获取指定资源ID对应的字符串,根据args参数进行格式化,使用同步方式返回相应字符串。
Z
zengyawen 已提交
347

V
VictoriaGuo 已提交
348 349
**系统能力**:SystemCapability.Global.ResourceManager

H
HelloCrease 已提交
350
**参数:** 
H
huangjie 已提交
351

H
HelloCrease 已提交
352 353 354
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |
355
| args | Array<string \| number> | 否    | 格式化字符串资源参数 <br> 支持参数类型:<br /> %d、%f、%s、%% <br> 说明:%%转译符,转译%<br>举例:%%d格式化后为%d字符串|
Z
zengyawen 已提交
356

H
huangjie 已提交
357 358
**返回值:**

359 360 361
| 类型     | 说明          |
| ------ | ---------------------------- |
| string | 资源ID值对应的格式化字符串|
Z
zengyawen 已提交
362

H
huangjie 已提交
363 364
**错误码:**

365 366
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)

H
huangjie 已提交
367
| 错误码ID | 错误信息 |
368 369 370 371 372
| -------- | ----------------------------------------------- |
| 9001001  | If the resId invalid.                               |
| 9001002  | If the resource not found by resId.                 |
| 9001006  | If the resource re-ref too much.                    |
| 9001007  | If the resource obtained by resId formatting error. |
H
huangjie 已提交
373

H
HelloCrease 已提交
374
**示例:** 
H
HelloCrease 已提交
375
  ```ts
H
huangjie 已提交
376
  try {
377
    this.context.resourceManager.getStringSync($r('app.string.test').id, "format string", 10, 98.78);
H
huangjie 已提交
378
  } catch (error) {
379
    console.error(`getStringSync failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
380
  }
Z
zengyawen 已提交
381 382
  ```

383
### getStringSync<sup>9+</sup>
Z
zengyawen 已提交
384

385
getStringSync(resource: Resource): string
386

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

**系统能力**:SystemCapability.Global.ResourceManager

Z
zt147369 已提交
391 392
**模型约束**:此接口仅可在Stage模型下使用。

393
**参数:** 
H
huangjie 已提交
394

395 396 397 398 399 400 401 402 403
| 参数名      | 类型                     | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
| resource | [Resource](#resource9) | 是    | 资源信息 |

**返回值:**

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

H
huangjie 已提交
405 406
**错误码:**

407 408
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)

H
huangjie 已提交
409 410
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
411 412 413
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
414

415
**示例:** 
H
HelloCrease 已提交
416
  ```ts
417
  let resource = {
418 419 420
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.string.test').id
421
  };
H
huangjie 已提交
422
  try {
423
    this.context.resourceManager.getStringSync(resource);
H
huangjie 已提交
424
  } catch (error) {
425
    console.error(`getStringSync failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
426
  }
427 428
  ```

429
### getStringSync<sup>10+</sup>
430

431
getStringSync(resource: Resource, ...args: Array<string | number>): string
432

433
用户获取指定resource对象对应的字符串,根据args参数进行格式化,使用同步方式返回相应字符串。
434 435 436

**系统能力**:SystemCapability.Global.ResourceManager

Z
zt147369 已提交
437 438
**模型约束**:此接口仅可在Stage模型下使用。

439
**参数:** 
H
huangjie 已提交
440

H
HelloCrease 已提交
441 442
| 参数名      | 类型                     | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
443
| resource | [Resource](#resource9) | 是    | 资源信息 |
444
| args | Array<string \| number> | 否    | 格式化字符串资源参数 <br> 支持参数类型:<br /> %d、%f、%s、%% <br> 说明:%%转译符,转译%<br>举例:%%d格式化后为%d字符串|
445

H
huangjie 已提交
446
**返回值:**
H
huangjie 已提交
447

448 449 450
| 类型     | 说明          |
| ------ | ---------------------------- |
| string | resource对象对应的格式化字符串|
451

H
huangjie 已提交
452 453
**错误码:**

454 455
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)

H
huangjie 已提交
456 457
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
458 459 460
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
| 9001006  | If the resource re-ref too much.            |
461
| 9001007  | If the resource obtained by resId formatting error. |
H
huangjie 已提交
462

463
**示例:** 
H
HelloCrease 已提交
464
  ```ts
465
  let resource = {
466 467 468
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.string.test').id
469
  };
H
huangjie 已提交
470
  try {
471
    this.context.resourceManager.getStringSync(resource, "format string", 10, 98.78);
H
huangjie 已提交
472
  } catch (error) {
473
    console.error(`getStringSync failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
474
  }
475
 ```
Z
zengyawen 已提交
476

477
### getStringByNameSync<sup>9+</sup>
H
huangjie 已提交
478

479
getStringByNameSync(resName: string): string
Z
zengyawen 已提交
480

481
用户获取指定资源名称对应的字符串,使用同步方式返回字符串。
Z
zengyawen 已提交
482

V
VictoriaGuo 已提交
483 484
**系统能力**:SystemCapability.Global.ResourceManager

H
HelloCrease 已提交
485
**参数:** 
H
huangjie 已提交
486

487 488 489 490 491 492 493 494 495
| 参数名     | 类型     | 必填   | 说明   |
| ------- | ------ | ---- | ---- |
| resName | string | 是    | 资源名称 |

**返回值:**

| 类型     | 说明         |
| ------ | ---------- |
| string | 资源名称对应的字符串 |
Z
zengyawen 已提交
496

H
huangjie 已提交
497 498
**错误码:**

499 500
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
501 502
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
503 504
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
H
huangjie 已提交
505
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
506

H
HelloCrease 已提交
507
**示例:** 
H
HelloCrease 已提交
508
  ```ts
H
huangjie 已提交
509
  try {
510
    this.context.resourceManager.getStringByNameSync("test");
H
huangjie 已提交
511
  } catch (error) {
512
    console.error(`getStringByNameSync failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
513
  }
Z
zengyawen 已提交
514 515
  ```

516
### getStringByNameSync<sup>10+</sup>
Z
zengyawen 已提交
517

518
getStringByNameSync(resName: string, ...args: Array<string | number>): string
Z
zengyawen 已提交
519

520
用户获取指定资源名称对应的字符串,根据args参数进行格式化,使用同步方式返回相应字符串。
Z
zengyawen 已提交
521

V
VictoriaGuo 已提交
522 523
**系统能力**:SystemCapability.Global.ResourceManager

H
HelloCrease 已提交
524
**参数:** 
H
huangjie 已提交
525

526 527 528 529
| 参数名     | 类型     | 必填   | 说明   |
| ------- | ------ | ---- | ---- |
| resName | string | 是    | 资源名称 |
| args | Array<string \| number> | 否    | 格式化字符串资源参数 <br> 支持参数类型:<br /> %d、%f、%s、%% <br> 说明:%%转译符,转译%<br>举例:%%d格式化后为%d字符串|
Z
zengyawen 已提交
530

H
huangjie 已提交
531 532
**返回值:**

533 534 535
| 类型     | 说明          |
| ------ | ---------------------------- |
| string | 资源名称对应的格式化字符串|
Z
zengyawen 已提交
536

H
huangjie 已提交
537 538
**错误码:**

539 540
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
541 542
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
543 544
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
H
huangjie 已提交
545
| 9001006  | If the resource re-ref too much.            |
546
| 9001008  | If the resource obtained by resName formatting error. |
H
huangjie 已提交
547

H
HelloCrease 已提交
548
**示例:** 
H
HelloCrease 已提交
549
  ```ts
H
huangjie 已提交
550
  try {
551
    this.context.resourceManager.getStringByNameSync("test", "format string", 10, 98.78);
H
huangjie 已提交
552
  } catch (error) {
553
    console.error(`getStringByNameSync failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
554
  }
555
 ```
Z
zengyawen 已提交
556

557
### getStringValue<sup>9+</sup>
558

559
getStringValue(resId: number, callback: AsyncCallback&lt;string&gt;): void
560

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

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
566

567 568 569 570
| 参数名      | 类型                          | 必填   | 说明              |
| -------- | --------------------------- | ---- | --------------- |
| resId    | number                      | 是    | 资源ID值           |
| callback | AsyncCallback&lt;string&gt; | 是    | 异步回调,用于返回获取的字符串 |
571

H
huangjie 已提交
572 573
**错误码:**

574 575
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
576 577
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
578 579 580
| 9001001  | If the module resId invalid.             |
| 9001002  | If the resource not found by resId.      |
| 9001006  | If the resource re-ref too much.         |
H
huangjie 已提交
581

582
**示例Stage:** 
H
HelloCrease 已提交
583
  ```ts
H
huangjie 已提交
584
  try {
585
    this.context.resourceManager.getStringValue($r('app.string.test').id, (error, value) => {
586
      if (error != null) {
587
        console.log("error is " + error);
588
      } else {
589
        let str = value;
590
      }
H
huangjie 已提交
591 592
    });
  } catch (error) {
593
    console.error(`callback getStringValue failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
594
  }
595 596
  ```

597
### getStringValue<sup>9+</sup>
598

599
getStringValue(resId: number): Promise&lt;string&gt;
600

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

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
606

607 608 609
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |
H
huangjie 已提交
610

611 612 613 614 615
**返回值:**

| 类型                    | 说明          |
| --------------------- | ----------- |
| Promise&lt;string&gt; | 资源ID值对应的字符串 |
616

H
huangjie 已提交
617 618
**错误码:**

619 620
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
621 622
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
623 624 625
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
626

627
**示例:** 
H
HelloCrease 已提交
628
  ```ts
H
huangjie 已提交
629
  try {
630 631
    this.context.resourceManager.getStringValue($r('app.string.test').id).then(value => {
      let str = value;
H
huangjie 已提交
632
    }).catch(error => {
633
      console.log("getStringValue promise error is " + error);
H
huangjie 已提交
634 635
    });
  } catch (error) {
636
    console.error(`promise getStringValue failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
637
  }
638
  ```
Z
zengyawen 已提交
639

640
### getStringValue<sup>9+</sup>
H
huangjie 已提交
641

642
getStringValue(resource: Resource, callback: AsyncCallback&lt;string&gt;): void
Z
zengyawen 已提交
643

644
用户获取指定resource对象对应的字符串,使用callback形式返回字符串。
Z
zengyawen 已提交
645

V
VictoriaGuo 已提交
646 647
**系统能力**:SystemCapability.Global.ResourceManager

648 649
**模型约束**:此接口仅可在Stage模型下使用。

H
HelloCrease 已提交
650
**参数:** 
H
huangjie 已提交
651

652 653 654 655
| 参数名      | 类型                          | 必填   | 说明              |
| -------- | --------------------------- | ---- | --------------- |
| resource | [Resource](#resource9)      | 是    | 资源信息            |
| callback | AsyncCallback&lt;string&gt; | 是    | 异步回调,用于返回获取的字符串 |
Z
zengyawen 已提交
656

H
huangjie 已提交
657 658
**错误码:**

659 660
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
661 662
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
663 664
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
665
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
666

H
HelloCrease 已提交
667
**示例:** 
H
HelloCrease 已提交
668
  ```ts
669 670 671 672 673
  let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.string.test').id
  };
H
huangjie 已提交
674
  try {
675 676 677 678 679 680
    this.context.resourceManager.getStringValue(resource, (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      } else {
        let str = value;
      }
H
huangjie 已提交
681 682
    });
  } catch (error) {
683
    console.error(`callback getStringValue failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
684
  }
Z
zengyawen 已提交
685 686
  ```

687
### getStringValue<sup>9+</sup>
Z
zt147369 已提交
688

689
getStringValue(resource: Resource): Promise&lt;string&gt;
Z
zt147369 已提交
690

691
用户获取指定resource对象对应的字符串,使用Promise形式返回字符串。
Z
zt147369 已提交
692 693 694

**系统能力**:SystemCapability.Global.ResourceManager

695
**模型约束**:此接口仅可在Stage模型下使用。
Z
zt147369 已提交
696

697 698 699 700 701 702 703 704 705 706 707
**参数:**

| 参数名      | 类型                     | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
| resource | [Resource](#resource9) | 是    | 资源信息 |

**返回值:**

| 类型                    | 说明               |
| --------------------- | ---------------- |
| Promise&lt;string&gt; | resource对象对应的字符串 |
Z
zt147369 已提交
708 709 710

**错误码:**

711 712
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

Z
zt147369 已提交
713 714 715 716
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
717
| 9001006  | If the resource re-ref too much.            |
Z
zt147369 已提交
718 719 720

**示例:** 
  ```ts
721 722 723 724 725
  let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.string.test').id
  };
Z
zt147369 已提交
726
  try {
727 728 729 730
    this.context.resourceManager.getStringValue(resource).then(value => {
      let str = value;
    }).catch(error => {
      console.log("getStringValue promise error is " + error);
Z
zt147369 已提交
731 732
    });
  } catch (error) {
733
    console.error(`promise getStringValue failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
734 735
  }
  ```
Z
zengyawen 已提交
736

737
### getStringByName<sup>9+</sup>
Z
zengyawen 已提交
738

739
getStringByName(resName: string, callback: AsyncCallback&lt;string&gt;): void
Z
zengyawen 已提交
740

741
用户获取指定资源名称对应的字符串,使用callback形式返回字符串。
Z
zengyawen 已提交
742

V
VictoriaGuo 已提交
743 744
**系统能力**:SystemCapability.Global.ResourceManager

745
**参数:**
H
huangjie 已提交
746

747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789
| 参数名      | 类型                          | 必填   | 说明              |
| -------- | --------------------------- | ---- | --------------- |
| resName  | string                      | 是    | 资源名称            |
| callback | AsyncCallback&lt;string&gt; | 是    | 异步回调,用于返回获取的字符串 |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

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

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

### getStringByName<sup>9+</sup>

getStringByName(resName: string): Promise&lt;string&gt;

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

**系统能力**:SystemCapability.Global.ResourceManager

**参数:**

| 参数名     | 类型     | 必填   | 说明   |
| ------- | ------ | ---- | ---- |
| resName | string | 是    | 资源名称 |
Z
zengyawen 已提交
790

H
huangjie 已提交
791 792
**返回值:**

793 794 795
| 类型                    | 说明         |
| --------------------- | ---------- |
| Promise&lt;string&gt; | 资源名称对应的字符串 |
Z
zengyawen 已提交
796

H
huangjie 已提交
797 798
**错误码:**

799 800
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
801 802
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
803 804 805
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
806

807
**示例:**
H
HelloCrease 已提交
808
  ```ts
H
huangjie 已提交
809
  try {
810 811 812 813 814
    this.context.resourceManager.getStringByName("test").then(value => {
      let str = value;
    }).catch(error => {
      console.log("getStringByName promise error is " + error);
    });
H
huangjie 已提交
815
  } catch (error) {
816
    console.error(`promise getStringByName failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
817
  }
Z
zengyawen 已提交
818 819
  ```

820
### getStringArrayValueSync<sup>10+</sup>
Z
zt147369 已提交
821

822
getStringArrayValueSync(resId: number): Array&lt;string&gt;
Z
zt147369 已提交
823

824
用户获取指定资源ID对应的字符串数组,使用同步方式返回字符串数组。
Z
zt147369 已提交
825 826 827 828 829 830 831 832 833 834 835

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 

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

**返回值:**

836 837 838
| 类型                    | 说明          |
| --------------------- | ----------- |
| Array&lt;string&gt; | 资源ID值对应的字符串数组 |
Z
zt147369 已提交
839 840 841

**错误码:**

842 843
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

Z
zt147369 已提交
844 845 846 847
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
848
| 9001006  | If the resource re-ref too much.            |
Z
zt147369 已提交
849 850 851 852

**示例:** 
  ```ts
  try {
853
    this.context.resourceManager.getStringArrayValueSync($r('app.strarray.test').id);
Z
zt147369 已提交
854
  } catch (error) {
855
    console.error(`getStringArrayValueSync failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
856 857 858
  }
  ```

859
### getStringArrayValueSync<sup>10+</sup>
860

861
getStringArrayValueSync(resource: Resource): Array&lt;string&gt;
862

863
用户获取指定resource对象对应的字符串数组,使用同步方式返回字符串数组。
864 865 866

**系统能力**:SystemCapability.Global.ResourceManager

Z
zt147369 已提交
867 868
**模型约束**:此接口仅可在Stage模型下使用。

869
**参数:** 
H
huangjie 已提交
870

871 872 873 874 875 876 877 878 879
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resource | [Resource](#resource9) | 是    | 资源信息 |

**返回值:**

| 类型                    | 说明          |
| --------------------- | ----------- |
| Array&lt;string&gt; | resource对象对应的字符串数组 |
880

H
huangjie 已提交
881 882
**错误码:**

883 884
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
885 886
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
887 888
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
889
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
890

891
**示例:** 
H
HelloCrease 已提交
892
  ```ts
893
  let resource = {
894 895 896
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.strarray.test').id
897
  };
H
huangjie 已提交
898
  try {
899
    this.context.resourceManager.getStringArrayValueSync(resource);
H
huangjie 已提交
900
  } catch (error) {
901
    console.error(`getStringArrayValueSync failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
902
  }
903 904
  ```

905
### getStringArrayValue<sup>9+</sup>
Z
zt147369 已提交
906

907
getStringArrayValue(resId: number, callback: AsyncCallback&lt;Array&lt;string&gt;&gt;): void
Z
zt147369 已提交
908

909
用户获取指定资源ID对应的字符串数组,使用callback形式返回字符串数组。
Z
zt147369 已提交
910 911 912 913 914

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 

915 916 917 918
| 参数名      | 类型                                       | 必填   | 说明                |
| -------- | ---------------------------------------- | ---- | ----------------- |
| resId    | number                                   | 是    | 资源ID值             |
| callback | AsyncCallback&lt;Array&lt;string&gt;&gt; | 是    | 异步回调,用于返回获取的字符串数组 |
Z
zt147369 已提交
919 920 921

**错误码:**

922 923
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

Z
zt147369 已提交
924 925 926 927
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
928
| 9001006  | If the resource re-ref too much.            |
Z
zt147369 已提交
929 930 931 932

**示例:** 
  ```ts
  try {
933 934 935 936 937 938
    this.context.resourceManager.getStringArrayValue($r('app.strarray.test').id, (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      } else {
        let strArray = value;
      }
Z
zt147369 已提交
939 940
    });
  } catch (error) {
941
    console.error(`callback getStringArrayValue failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
942 943 944
  }
  ```

945
### getStringArrayValue<sup>9+</sup>
946

947
getStringArrayValue(resId: number): Promise&lt;Array&lt;string&gt;&gt;
948

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

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
954

955 956 957
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |
958

H
huangjie 已提交
959 960
**返回值:**

961 962 963
| 类型                                 | 说明            |
| ---------------------------------- | ------------- |
| Promise&lt;Array&lt;string&gt;&gt; | 资源ID值对应的字符串数组 |
964

H
huangjie 已提交
965 966
**错误码:**

967 968
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
969 970
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
971 972
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
973
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
974

975
**示例:** 
H
HelloCrease 已提交
976
  ```ts
H
huangjie 已提交
977
  try {
978 979
    this.context.resourceManager.getStringArrayValue($r('app.strarray.test').id).then(value => {
      let strArray = value;
H
huangjie 已提交
980
    }).catch(error => {
981
      console.log("getStringArrayValue promise error is " + error);
H
huangjie 已提交
982 983
    });
  } catch (error) {
984
    console.error(`promise getStringArrayValue failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
985
  }
986
  ```
Z
zengyawen 已提交
987

988
### getStringArrayValue<sup>9+</sup>
Z
zt147369 已提交
989

990
getStringArrayValue(resource: Resource, callback: AsyncCallback&lt;Array&lt;string&gt;&gt;): void
Z
zt147369 已提交
991

992
用户获取指定resource对象对应的字符串数组,使用callback形式返回回字符串数组。
Z
zt147369 已提交
993 994 995

**系统能力**:SystemCapability.Global.ResourceManager

Z
zt147369 已提交
996 997
**模型约束**:此接口仅可在Stage模型下使用。

Z
zt147369 已提交
998 999
**参数:** 

1000 1001 1002 1003
| 参数名      | 类型                                       | 必填   | 说明                |
| -------- | ---------------------------------------- | ---- | ----------------- |
| resource | [Resource](#resource9)                   | 是    | 资源信息              |
| callback | AsyncCallback&lt;Array&lt;string&gt;&gt; | 是    | 异步回调,用于返回获取的字符串数组 |
Z
zt147369 已提交
1004 1005 1006

**错误码:**

1007 1008
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

Z
zt147369 已提交
1009 1010 1011 1012
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
1013
| 9001006  | If the resource re-ref too much.            |
Z
zt147369 已提交
1014 1015 1016 1017

**示例:** 
  ```ts
  let resource = {
1018 1019 1020
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.strarray.test').id
Z
zt147369 已提交
1021 1022
  };
  try {
1023 1024 1025 1026 1027 1028
    this.context.resourceManager.getStringArrayValue(resource, (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      } else {
        let strArray = value;
      }
Z
zt147369 已提交
1029 1030
    });
  } catch (error) {
1031
    console.error(`callback getStringArrayValue failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
1032 1033
  }
  ```
Z
zengyawen 已提交
1034

1035
### getStringArrayValue<sup>9+</sup>
H
huangjie 已提交
1036

1037
getStringArrayValue(resource: Resource): Promise&lt;Array&lt;string&gt;&gt;
Z
zengyawen 已提交
1038

1039
用户获取指定resource对象对应的字符串数组,使用Promise形式返回字符串数组。
Z
zengyawen 已提交
1040

V
VictoriaGuo 已提交
1041 1042
**系统能力**:SystemCapability.Global.ResourceManager

1043 1044
**模型约束**:此接口仅可在Stage模型下使用。

H
HelloCrease 已提交
1045
**参数:** 
H
huangjie 已提交
1046

1047 1048 1049 1050 1051 1052 1053 1054 1055
| 参数名      | 类型                     | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
| resource | [Resource](#resource9) | 是    | 资源信息 |

**返回值:**

| 类型                                 | 说明                 |
| ---------------------------------- | ------------------ |
| Promise&lt;Array&lt;string&gt;&gt; | resource对象对应的字符串数组 |
Z
zengyawen 已提交
1056

H
huangjie 已提交
1057 1058
**错误码:**

1059 1060
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
1061 1062
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
1063 1064
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
1065
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
1066

H
HelloCrease 已提交
1067
**示例:** 
H
HelloCrease 已提交
1068
  ```ts
1069 1070 1071 1072 1073
  let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.strarray.test').id
  };
H
huangjie 已提交
1074
  try {
1075 1076 1077 1078 1079
    this.context.resourceManager.getStringArrayValue(resource).then(value => {
      let strArray = value;
    }).catch(error => {
      console.log("getStringArray promise error is " + error);
    });
H
huangjie 已提交
1080
  } catch (error) {
1081
    console.error(`promise getStringArrayValue failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
1082
  }
Z
zengyawen 已提交
1083 1084
  ```

1085
### getStringArrayByName<sup>9+</sup>
Z
zt147369 已提交
1086

1087
getStringArrayByName(resName: string, callback: AsyncCallback&lt;Array&lt;string&gt;&gt;): void
Z
zt147369 已提交
1088

1089
用户获取指定资源名称对应的字符串数组,使用callback形式返回字符串数组。
Z
zt147369 已提交
1090 1091 1092

**系统能力**:SystemCapability.Global.ResourceManager

1093
**参数:**
Z
zt147369 已提交
1094

1095 1096 1097 1098
| 参数名      | 类型                                       | 必填   | 说明                |
| -------- | ---------------------------------------- | ---- | ----------------- |
| resName  | string                                   | 是    | 资源名称              |
| callback | AsyncCallback&lt;Array&lt;string&gt;&gt; | 是    | 异步回调,用于返回获取的字符串数组 |
Z
zt147369 已提交
1099 1100 1101

**错误码:**

1102 1103
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

Z
zt147369 已提交
1104 1105
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
1106 1107 1108
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
| 9001006  | If the resource re-ref too much.            |
Z
zt147369 已提交
1109 1110 1111 1112

**示例:** 
  ```ts
  try {
1113 1114 1115 1116 1117 1118 1119
    this.context.resourceManager.getStringArrayByName("test", (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      } else {
        let strArray = value;
      }
    });
Z
zt147369 已提交
1120
  } catch (error) {
1121
    console.error(`callback getStringArrayByName failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
1122 1123
  }
  ```
Z
zengyawen 已提交
1124

1125
### getStringArrayByName<sup>9+</sup>
Z
zengyawen 已提交
1126

1127
getStringArrayByName(resName: string): Promise&lt;Array&lt;string&gt;&gt;
Z
zengyawen 已提交
1128

1129
用户获取指定资源名称对应的字符串数组,使用Promise形式返回字符串数组。
Z
zengyawen 已提交
1130

V
VictoriaGuo 已提交
1131 1132
**系统能力**:SystemCapability.Global.ResourceManager

H
HelloCrease 已提交
1133
**参数:** 
H
huangjie 已提交
1134

1135 1136 1137
| 参数名     | 类型     | 必填   | 说明   |
| ------- | ------ | ---- | ---- |
| resName | string | 是    | 资源名称 |
Z
zengyawen 已提交
1138

H
huangjie 已提交
1139 1140
**返回值:**

1141 1142 1143
| 类型                                 | 说明           |
| ---------------------------------- | ------------ |
| Promise&lt;Array&lt;string&gt;&gt; | 资源名称对应的字符串数组 |
Z
zengyawen 已提交
1144

H
huangjie 已提交
1145 1146
**错误码:**

1147 1148
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
1149 1150
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
1151 1152 1153
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
1154

H
HelloCrease 已提交
1155
**示例:** 
H
HelloCrease 已提交
1156
  ```ts
H
huangjie 已提交
1157
  try {
1158 1159
    this.context.resourceManager.getStringArrayByName("test").then(value => {
      let strArray = value;
H
huangjie 已提交
1160
    }).catch(error => {
1161
      console.log("getStringArrayByName promise error is " + error);
H
huangjie 已提交
1162 1163
    });
  } catch (error) {
1164
    console.error(`promise getStringArrayByName failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
1165 1166 1167
  }
  ```

1168
### getPluralStringValueSync<sup>10+</sup>
Z
zt147369 已提交
1169

1170
getPluralStringValueSync(resId: number, num: number): string
Z
zt147369 已提交
1171

1172
根据指定数量获取指定ID字符串表示的单复数字符串,使用同步方式返回字符串。
Z
zt147369 已提交
1173 1174 1175 1176 1177 1178 1179 1180

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 

| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |
1181
| num   | number | 是    | 数量值   |
Z
zt147369 已提交
1182 1183 1184

**返回值:**

1185 1186 1187
| 类型                    | 说明          |
| -------- | ----------- |
| string   | 根据指定数量获取指定ID字符串表示的单复数字符串 |
Z
zt147369 已提交
1188 1189 1190

**错误码:**

1191 1192
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

Z
zt147369 已提交
1193 1194 1195 1196
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
1197
| 9001006  | If the resource re-ref too much.            |
Z
zt147369 已提交
1198 1199 1200 1201

**示例:** 
  ```ts
  try {
1202
    this.context.resourceManager.getPluralStringValueSync($r('app.plural.test').id, 1);
Z
zt147369 已提交
1203
  } catch (error) {
1204
    console.error(`getPluralStringValueSync failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
1205
  }
Z
zengyawen 已提交
1206 1207
  ```

1208
### getPluralStringValueSync<sup>10+</sup>
1209

1210
getPluralStringValueSync(resource: Resource, num: number): string
1211

1212
根据指定数量获取指定resource对象表示的单复数字符串,使用同步方式返回字符串。
1213 1214 1215

**系统能力**:SystemCapability.Global.ResourceManager

Z
zt147369 已提交
1216 1217
**模型约束**:此接口仅可在Stage模型下使用。

1218
**参数:** 
H
huangjie 已提交
1219

1220 1221 1222 1223 1224 1225 1226 1227 1228 1229
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resource | [Resource](#resource9) | 是    | 资源信息 |
| num      | number                 | 是    | 数量值   |

**返回值:**

| 类型                    | 说明          |
| --------------------- | ----------- |
| string | 根据指定数量获取指定resource对象表示的单复数字符串 |
1230

H
huangjie 已提交
1231 1232
**错误码:**

1233 1234
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
1235 1236
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
1237 1238
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
1239
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
1240

1241
**示例:** 
H
HelloCrease 已提交
1242
  ```ts
1243
  let resource = {
1244 1245 1246
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.plural.test').id
1247
  };
H
huangjie 已提交
1248
  try {
1249
    this.context.resourceManager.getPluralStringValueSync(resource, 1);
H
huangjie 已提交
1250
  } catch (error) {
1251
    console.error(`getPluralStringValueSync failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
1252
  }
1253 1254
  ```

1255
### getPluralStringValue<sup>9+</sup>
Z
zt147369 已提交
1256

1257
getPluralStringValue(resId: number, num: number, callback: AsyncCallback&lt;string&gt;): void
Z
zt147369 已提交
1258

1259
根据指定数量获取指定ID字符串表示的单复数字符串,使用callback形式返回字符串。
Z
zt147369 已提交
1260 1261 1262

**系统能力**:SystemCapability.Global.ResourceManager

1263
**参数:** 
Z
zt147369 已提交
1264

1265 1266 1267 1268 1269
| 参数名      | 类型                          | 必填   | 说明                              |
| -------- | --------------------------- | ---- | ------------------------------- |
| resId    | number                      | 是    | 资源ID值                           |
| num      | number                      | 是    | 数量值                             |
| callback | AsyncCallback&lt;string&gt; | 是    | 异步回调,返回根据指定数量获取指定ID字符串表示的单复数字符串 |
Z
zt147369 已提交
1270 1271 1272

**错误码:**

1273 1274
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

Z
zt147369 已提交
1275 1276 1277 1278
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
1279
| 9001006  | If the resource re-ref too much.            |
Z
zt147369 已提交
1280 1281 1282 1283

**示例:** 
  ```ts
  try {
1284 1285 1286 1287 1288 1289
    this.context.resourceManager.getPluralStringValue($r("app.plural.test").id, 1, (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      } else {
        let str = value;
      }
Z
zt147369 已提交
1290 1291
    });
  } catch (error) {
1292
    console.error(`callback getPluralStringValue failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
1293 1294 1295
  }
  ```

1296
### getPluralStringValue<sup>9+</sup>
1297

1298
getPluralStringValue(resId: number, num: number): Promise&lt;string&gt;
1299

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

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
1305

1306 1307 1308 1309
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |
| num   | number | 是    | 数量值   |
1310

H
huangjie 已提交
1311 1312
**返回值:**

H
HelloCrease 已提交
1313 1314
| 类型                    | 说明                        |
| --------------------- | ------------------------- |
1315
| Promise&lt;string&gt; | 根据提供的数量获取对应ID字符串表示的单复数字符串 |
1316

H
huangjie 已提交
1317 1318
**错误码:**

1319 1320
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
1321 1322
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
1323 1324
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
1325
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
1326

1327
**示例:** 
H
HelloCrease 已提交
1328
  ```ts
H
huangjie 已提交
1329
  try {
1330 1331
    this.context.resourceManager.getPluralStringValue($r("app.plural.test").id, 1).then(value => {
      let str = value;
H
huangjie 已提交
1332
    }).catch(error => {
1333
      console.log("getPluralStringValue promise error is " + error);
H
huangjie 已提交
1334 1335
    });
  } catch (error) {
1336
    console.error(`promise getPluralStringValue failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
1337
  }
1338 1339
  ```

1340
### getPluralStringValue<sup>9+</sup>
Z
zt147369 已提交
1341

1342
getPluralStringValue(resource: Resource, num: number, callback: AsyncCallback&lt;string&gt;): void
Z
zt147369 已提交
1343

1344
根据指定数量获取指定resource对象表示的单复数字符串,使用callback形式返回字符串。
Z
zt147369 已提交
1345 1346 1347

**系统能力**:SystemCapability.Global.ResourceManager

Z
zt147369 已提交
1348 1349
**模型约束**:此接口仅可在Stage模型下使用。

Z
zt147369 已提交
1350 1351
**参数:** 

1352 1353 1354 1355 1356
| 参数名      | 类型                          | 必填   | 说明                                   |
| -------- | --------------------------- | ---- | ------------------------------------ |
| resource | [Resource](#resource9)      | 是    | 资源信息                                 |
| num      | number                      | 是    | 数量值                                  |
| callback | AsyncCallback&lt;string&gt; | 是    | 异步回调,返回根据指定数量获取指定resource对象表示的单复数字符串 |
Z
zt147369 已提交
1357 1358 1359

**错误码:**

1360 1361
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

Z
zt147369 已提交
1362 1363 1364 1365
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
1366
| 9001006  | If the resource re-ref too much.            |
Z
zt147369 已提交
1367 1368 1369 1370

**示例:** 
  ```ts
  let resource = {
1371 1372 1373
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.plural.test').id
Z
zt147369 已提交
1374 1375
  };
  try {
1376 1377 1378 1379 1380 1381
    this.context.resourceManager.getPluralStringValue(resource, 1, (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      } else {
        let str = value;
      }
Z
zt147369 已提交
1382 1383
    });
  } catch (error) {
1384
    console.error(`callback getPluralStringValue failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
1385 1386
  }
  ```
Z
zengyawen 已提交
1387

1388
### getPluralStringValue<sup>9+</sup>
Z
zengyawen 已提交
1389

1390
getPluralStringValue(resource: Resource, num: number): Promise&lt;string&gt;
Z
zengyawen 已提交
1391

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

V
VictoriaGuo 已提交
1394 1395
**系统能力**:SystemCapability.Global.ResourceManager

1396 1397
**模型约束**:此接口仅可在Stage模型下使用。

H
HelloCrease 已提交
1398
**参数:** 
H
huangjie 已提交
1399

1400 1401 1402 1403
| 参数名      | 类型                     | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
| resource | [Resource](#resource9) | 是    | 资源信息 |
| num      | number                 | 是    | 数量值  |
Z
zengyawen 已提交
1404

1405
**返回值:**
Z
zengyawen 已提交
1406

1407 1408 1409
| 类型                    | 说明                             |
| --------------------- | ------------------------------ |
| Promise&lt;string&gt; | 根据提供的数量获取对应resource对象表示的单复数字符串 |
Z
zengyawen 已提交
1410

1411
**错误码:**
V
VictoriaGuo 已提交
1412

1413
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。
H
huangjie 已提交
1414

1415 1416 1417 1418 1419
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
| 9001006  | If the resource re-ref too much.            |
Z
zengyawen 已提交
1420

H
HelloCrease 已提交
1421
**示例:** 
H
HelloCrease 已提交
1422
  ```ts
1423 1424 1425 1426 1427
  let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.plural.test').id
  };
Z
zt147369 已提交
1428
  try {
1429 1430
    this.context.resourceManager.getPluralStringValue(resource, 1).then(value => {
      let str = value;
Z
zt147369 已提交
1431
    }).catch(error => {
1432
      console.log("getPluralStringValue promise error is " + error);
Z
zt147369 已提交
1433 1434
    });
  } catch (error) {
1435
    console.error(`promise getPluralStringValue failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
1436
  }
Z
zengyawen 已提交
1437
  ```
Z
zengyawen 已提交
1438

1439
### getPluralStringByName<sup>9+</sup>
Z
zengyawen 已提交
1440

1441
getPluralStringByName(resName: string, num: number, callback: AsyncCallback&lt;string&gt;): void
Z
zengyawen 已提交
1442

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

V
VictoriaGuo 已提交
1445 1446
**系统能力**:SystemCapability.Global.ResourceManager

H
HelloCrease 已提交
1447
**参数:** 
H
huangjie 已提交
1448

1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463
| 参数名      | 类型                          | 必填   | 说明                            |
| -------- | --------------------------- | ---- | ----------------------------- |
| resName  | string                      | 是    | 资源名称                          |
| num      | number                      | 是    | 数量值                           |
| callback | AsyncCallback&lt;string&gt; | 是    | 异步回调,返回根据传入的数量值获取资源名称对应的字符串资源 |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
| 9001006  | If the resource re-ref too much.            |
Z
zengyawen 已提交
1464

H
HelloCrease 已提交
1465
**示例:** 
H
HelloCrease 已提交
1466
  ```ts
Z
zt147369 已提交
1467
  try {
1468
    this.context.resourceManager.getPluralStringByName("test", 1, (error, value) => {
Z
zt147369 已提交
1469
      if (error != null) {
1470
        console.log("error is " + error);
Z
zt147369 已提交
1471
      } else {
1472
        let str = value;
Z
zt147369 已提交
1473 1474 1475
      }
    });
  } catch (error) {
1476
    console.error(`callback getPluralStringByName failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
1477
  }
Z
zengyawen 已提交
1478
  ```
Z
zengyawen 已提交
1479

1480
### getPluralStringByName<sup>9+</sup>
Z
zengyawen 已提交
1481

1482
getPluralStringByName(resName: string, num: number): Promise&lt;string&gt;
Z
zengyawen 已提交
1483

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

V
VictoriaGuo 已提交
1486 1487
**系统能力**:SystemCapability.Global.ResourceManager

1488
**参数:** 
Z
zengyawen 已提交
1489

1490 1491 1492 1493
| 参数名     | 类型     | 必填   | 说明   |
| ------- | ------ | ---- | ---- |
| resName | string | 是    | 资源名称 |
| num     | number | 是    | 数量值  |
V
VictoriaGuo 已提交
1494

1495
**返回值:**
H
huangjie 已提交
1496

1497 1498 1499
| 类型                    | 说明                     |
| --------------------- | ---------------------- |
| Promise&lt;string&gt; | 根据传入的数量值获取资源名称对应的字符串资源 |
Z
zengyawen 已提交
1500

H
huangjie 已提交
1501 1502
**错误码:**

1503 1504
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
1505 1506
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
1507 1508
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
H
huangjie 已提交
1509
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
1510

H
HelloCrease 已提交
1511
**示例:** 
H
HelloCrease 已提交
1512
  ```ts
H
huangjie 已提交
1513
  try {
1514 1515 1516 1517
    this.context.resourceManager.getPluralStringByName("test", 1).then(value => {
      let str = value;
    }).catch(error => {
      console.log("getPluralStringByName promise error is " + error);
H
huangjie 已提交
1518 1519
    });
  } catch (error) {
1520
    console.error(`promise getPluralStringByName failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
1521
  }
Z
zengyawen 已提交
1522
  ```
Z
zengyawen 已提交
1523

1524
### getMediaContentSync<sup>10+</sup>
Z
zengyawen 已提交
1525

1526
getMediaContentSync(resId: number, density?: number): Uint8Array
Z
zengyawen 已提交
1527

1528
用户获取指定资源ID对应的默认或指定的屏幕密度媒体文件内容,使用同步方式返回字节数组。
Z
zengyawen 已提交
1529

V
VictoriaGuo 已提交
1530 1531
**系统能力**:SystemCapability.Global.ResourceManager

1532
**参数:**
H
huangjie 已提交
1533

H
HelloCrease 已提交
1534 1535 1536
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |
1537
| [density](#screendensity) | number | 否    | 资源获取需要的屏幕密度,0或缺省表示默认屏幕密度 |
Z
zengyawen 已提交
1538

H
huangjie 已提交
1539 1540
**返回值:**

1541 1542 1543
| 类型                    | 说明          |
| -------- | ----------- |
| Uint8Array   | 资源ID对应的媒体文件内容 |
Z
zengyawen 已提交
1544

H
huangjie 已提交
1545 1546
**错误码:**

1547 1548
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
1549 1550
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
1551 1552
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
H
huangjie 已提交
1553

1554
**示例:**
H
HelloCrease 已提交
1555
  ```ts
H
huangjie 已提交
1556
  try {
1557
    this.context.resourceManager.getMediaContentSync($r('app.media.test').id); // 默认屏幕密度
H
huangjie 已提交
1558
  } catch (error) {
1559 1560 1561 1562 1563 1564 1565
    console.error(`getMediaContentSync failed, error code: ${error.code}, message: ${error.message}.`);
  }

  try {
    this.context.resourceManager.getMediaContentSync($r('app.media.test').id, 120); // 指定屏幕密度
  } catch (error) {
    console.error(`getMediaContentSync failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
1566
  }
Z
zengyawen 已提交
1567
  ```
Z
zengyawen 已提交
1568

1569
### getMediaContentSync<sup>10+</sup>
1570

1571
getMediaContentSync(resource: Resource, density?: number): Uint8Array
1572

1573
用户获取指定resource对象对应的默认或指定的屏幕密度媒体文件内容,使用同步方式返回字节数组。
1574 1575 1576

**系统能力**:SystemCapability.Global.ResourceManager

Z
zt147369 已提交
1577 1578
**模型约束**:此接口仅可在Stage模型下使用。

1579
**参数:**
H
huangjie 已提交
1580

1581 1582 1583 1584 1585 1586 1587 1588 1589 1590
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resource | [Resource](#resource9) | 是    | 资源信息 |
| [density](#screendensity) | number | 否    | 资源获取需要的屏幕密度,0或缺省表示默认屏幕密度 |

**返回值:**

| 类型                    | 说明          |
| --------------------- | ----------- |
| Uint8Array | resource对象对应的媒体文件内容 |
1591

H
huangjie 已提交
1592 1593
**错误码:**

1594 1595
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
1596 1597
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
1598 1599
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
H
huangjie 已提交
1600

1601
**示例:**
H
HelloCrease 已提交
1602
  ```ts
1603
  let resource = {
1604 1605 1606
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.media.test').id
1607
  };
H
huangjie 已提交
1608
  try {
1609
    this.context.resourceManager.getMediaContentSync(resource); // 默认屏幕密度
H
huangjie 已提交
1610
  } catch (error) {
1611 1612 1613 1614 1615 1616 1617
    console.error(`getMediaContentSync failed, error code: ${error.code}, message: ${error.message}.`);
  }

  try {
    this.context.resourceManager.getMediaContentSync(resource, 120); // 指定屏幕密度
  } catch (error) {
    console.error(`getMediaContentSync failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
1618
  }
1619 1620
  ```

1621
### getMediaContent<sup>9+</sup>
1622

1623
getMediaContent(resId: number, callback: AsyncCallback&lt;Uint8Array&gt;): void
1624

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

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
1630

1631 1632 1633 1634
| 参数名      | 类型                              | 必填   | 说明                 |
| -------- | ------------------------------- | ---- | ------------------ |
| resId    | number                          | 是    | 资源ID值              |
| callback | AsyncCallback&lt;Uint8Array&gt; | 是    | 异步回调,用于返回获取的媒体文件内容 |
1635

H
huangjie 已提交
1636 1637
**错误码:**

1638 1639
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
1640 1641
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
1642 1643
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
H
huangjie 已提交
1644

1645
**示例:** 
H
HelloCrease 已提交
1646
  ```ts
H
huangjie 已提交
1647
  try {
1648 1649 1650 1651 1652 1653
    this.context.resourceManager.getMediaContent($r('app.media.test').id, (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      } else {
        let media = value;
      }
H
huangjie 已提交
1654 1655
    });
  } catch (error) {
1656
    console.error(`callback getMediaContent failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
1657
  }
1658 1659
  ```

1660
### getMediaContent<sup>10+</sup>
Z
zengyawen 已提交
1661

1662
getMediaContent(resId: number, density: number, callback: AsyncCallback&lt;Uint8Array&gt;): void
Z
zengyawen 已提交
1663

1664
用户获取指定资源ID对应的指定屏幕密度媒体文件内容,使用callback形式返回字节数组。
Z
zengyawen 已提交
1665

V
VictoriaGuo 已提交
1666 1667
**系统能力**:SystemCapability.Global.ResourceManager

H
HelloCrease 已提交
1668
**参数:** 
H
huangjie 已提交
1669

1670 1671 1672 1673 1674
| 参数名      | 类型                              | 必填   | 说明                 |
| -------- | ------------------------------- | ---- | ------------------ |
| resId    | number                          | 是    | 资源ID值              |
| [density](#screendensity)  | number                          | 是    | 资源获取需要的屏幕密度,0表示默认屏幕密度    |
| callback | AsyncCallback&lt;Uint8Array&gt; | 是    | 异步回调,用于返回获取的媒体文件内容 |
Z
zengyawen 已提交
1675

H
huangjie 已提交
1676 1677
**错误码:**

1678 1679
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
1680 1681
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
1682 1683
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
H
huangjie 已提交
1684

H
HelloCrease 已提交
1685
**示例:** 
H
HelloCrease 已提交
1686
  ```ts
H
huangjie 已提交
1687
  try {
1688 1689 1690 1691 1692 1693
    this.context.resourceManager.getMediaContent($r('app.media.test').id, 120, (error, value) => {
      if (error != null) {
        console.error(`callback getMediaContent failed, error code: ${error.code}, message: ${error.message}.`);
      } else {
        let media = value;
      }
H
huangjie 已提交
1694 1695
    });
  } catch (error) {
1696
    console.error(`callback getMediaContent failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
1697
  }
Z
zengyawen 已提交
1698 1699
  ```

1700
### getMediaContent<sup>9+</sup>
Z
zengyawen 已提交
1701

1702
getMediaContent(resId: number): Promise&lt;Uint8Array&gt;
Z
zengyawen 已提交
1703

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

V
VictoriaGuo 已提交
1706 1707
**系统能力**:SystemCapability.Global.ResourceManager

H
HelloCrease 已提交
1708
**参数:** 
H
huangjie 已提交
1709

1710 1711 1712 1713
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |

H
huangjie 已提交
1714 1715
**返回值:**

1716 1717 1718
| 类型                        | 说明             |
| ------------------------- | -------------- |
| Promise&lt;Uint8Array&gt; | 资源ID值对应的媒体文件内容 |
Z
zengyawen 已提交
1719

H
huangjie 已提交
1720 1721
**错误码:**

1722 1723
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
1724 1725
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
1726 1727
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
H
huangjie 已提交
1728

H
HelloCrease 已提交
1729
**示例:** 
H
HelloCrease 已提交
1730
  ```ts
H
huangjie 已提交
1731
  try {
1732 1733
    this.context.resourceManager.getMediaContent($r('app.media.test').id).then(value => {
      let media = value;
H
huangjie 已提交
1734
    }).catch(error => {
1735
      console.log("getMediaContent promise error is " + error);
H
huangjie 已提交
1736 1737
    });
  } catch (error) {
1738
    console.error(`promise getMediaContent failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
1739
  }
Z
zengyawen 已提交
1740
  ```
W
wplan1 已提交
1741

1742
### getMediaContent<sup>10+</sup>
W
wplan1 已提交
1743

1744
getMediaContent(resId: number, density: number): Promise&lt;Uint8Array&gt;
W
wplan1 已提交
1745

1746
用户获取指定资源ID对应的指定屏幕密度媒体文件内容,使用Promise形式返回字节数组。
W
wplan1 已提交
1747 1748 1749

**系统能力**:SystemCapability.Global.ResourceManager

H
HelloCrease 已提交
1750
**参数:** 
H
huangjie 已提交
1751

1752 1753 1754 1755 1756 1757 1758 1759 1760 1761
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |
| [density](#screendensity)  | number                          | 是    | 资源获取需要的屏幕密度,0表示默认屏幕密度    |

**返回值:**

| 类型                        | 说明             |
| ------------------------- | -------------- |
| Promise&lt;Uint8Array&gt; | 资源ID值对应的媒体文件内容 |
H
huangjie 已提交
1762

H
huangjie 已提交
1763 1764
**错误码:**

1765 1766
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
1767 1768
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
1769 1770
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
W
wplan1 已提交
1771

H
HelloCrease 已提交
1772
**示例:** 
H
HelloCrease 已提交
1773
  ```ts
H
huangjie 已提交
1774
  try {
1775 1776 1777 1778
    this.context.resourceManager.getMediaContent($r('app.media.test').id, 120).then(value => {
      let media = value;
    }).catch(error => {
      console.error(`promise getMediaContent failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
1779 1780
    });
  } catch (error) {
1781
    console.error(`promise getMediaContent failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
1782
  }
W
wplan1 已提交
1783 1784
  ```

1785
### getMediaContent<sup>9+</sup>
W
wplan1 已提交
1786

1787
getMediaContent(resource: Resource, callback: AsyncCallback&lt;Uint8Array&gt;): void
W
wplan1 已提交
1788

1789
用户获取指定resource对象对应的媒体文件内容,使用callback形式返回字节数组。
W
wplan1 已提交
1790 1791 1792

**系统能力**:SystemCapability.Global.ResourceManager

1793
**模型约束**:此接口仅可在Stage模型下使用。
W
wplan1 已提交
1794

1795
**参数:** 
H
huangjie 已提交
1796

1797 1798 1799 1800
| 参数名      | 类型                              | 必填   | 说明                 |
| -------- | ------------------------------- | ---- | ------------------ |
| resource | [Resource](#resource9)          | 是    | 资源信息               |
| callback | AsyncCallback&lt;Uint8Array&gt; | 是    | 异步回调,用于返回获取的媒体文件内容 |
H
huangjie 已提交
1801

H
huangjie 已提交
1802 1803
**错误码:**

1804 1805
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
1806 1807
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
1808 1809
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
W
wplan1 已提交
1810

H
HelloCrease 已提交
1811
**示例:** 
H
HelloCrease 已提交
1812
  ```ts
1813 1814 1815 1816 1817
  let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.media.test').id
  };
H
huangjie 已提交
1818
  try {
1819 1820 1821 1822 1823 1824
    this.context.resourceManager.getMediaContent(resource, (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      } else {
        let media = value;
      }
H
huangjie 已提交
1825 1826
    });
  } catch (error) {
1827
    console.error(`callback getMediaContent failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
1828
  }
W
wplan1 已提交
1829 1830
  ```

1831
### getMediaContent<sup>10+</sup>
1832

1833
getMediaContent(resource: Resource, density: number, callback: AsyncCallback&lt;Uint8Array&gt;): void
1834

1835
用户获取指定resource对象对应的指定屏幕密度媒体文件内容,使用callback形式返回字节数组。
1836 1837 1838

**系统能力**:SystemCapability.Global.ResourceManager

1839 1840
**模型约束**:此接口仅可在Stage模型下使用。

1841 1842
**参数:** 

1843 1844 1845 1846 1847
| 参数名      | 类型                              | 必填   | 说明                 |
| -------- | ------------------------------- | ---- | ------------------ |
| resource | [Resource](#resource9)          | 是    | 资源信息               |
| [density](#screendensity)  | number        | 是    | 资源获取需要的屏幕密度,0表示默认屏幕密度    |
| callback | AsyncCallback&lt;Uint8Array&gt; | 是    | 异步回调,用于返回获取的媒体文件内容 |
1848 1849 1850 1851 1852 1853 1854

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
1855 1856
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
1857 1858 1859

**示例:** 
  ```ts
1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871
  let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.media.test').id
  };
  try {
    this.context.resourceManager.getMediaContent(resource, 120, (error, value) => {
      if (error != null) {
        console.error(`callback getMediaContent failed, error code: ${error.code}, message: ${error.message}.`);
      } else {
        let media = value;
      }
1872 1873
    });
  } catch (error) {
1874
    console.error(`callback getMediaContent failed, error code: ${error.code}, message: ${error.message}.`);
1875 1876 1877
  }
  ```

1878
### getMediaContent<sup>9+</sup>
1879

1880
getMediaContent(resource: Resource): Promise&lt;Uint8Array&gt;
1881

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

**系统能力**:SystemCapability.Global.ResourceManager

1886 1887
**模型约束**:此接口仅可在Stage模型下使用。

1888 1889
**参数:** 

1890 1891 1892
| 参数名      | 类型                     | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
| resource | [Resource](#resource9) | 是    | 资源信息 |
1893 1894 1895

**返回值:**

1896 1897 1898
| 类型                        | 说明                  |
| ------------------------- | ------------------- |
| Promise&lt;Uint8Array&gt; | resource对象对应的媒体文件内容 |
1899 1900 1901 1902 1903 1904 1905

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
1906 1907
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
1908 1909 1910

**示例:** 
  ```ts
1911 1912 1913 1914 1915 1916 1917 1918
  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;
1919
    }).catch(error => {
1920
      console.log("getMediaContent promise error is " + error);
1921 1922
    });
  } catch (error) {
1923
    console.error(`promise getMediaContent failed, error code: ${error.code}, message: ${error.message}.`);
1924 1925 1926
  }
  ```

1927
### getMediaContent<sup>10+</sup>
W
wplan1 已提交
1928

1929
getMediaContent(resource: Resource, density: number): Promise&lt;Uint8Array&gt;
H
huangjie 已提交
1930

1931
用户获取指定resource对象对应的指定屏幕密度媒体文件内容,使用Promise形式返回字节数组。
H
huangjie 已提交
1932

H
huangjie 已提交
1933
**系统能力**:SystemCapability.Global.ResourceManager
H
huangjie 已提交
1934

1935 1936
**模型约束**:此接口仅可在Stage模型下使用。

H
huangjie 已提交
1937
**参数:** 
H
huangjie 已提交
1938

1939 1940 1941 1942 1943 1944 1945 1946 1947 1948
| 参数名      | 类型                     | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
| resource | [Resource](#resource9) | 是    | 资源信息 |
| [density](#screendensity)  | number                          | 是    | 资源获取需要的屏幕密度,0表示默认屏幕密度    |

**返回值:**

| 类型                        | 说明                  |
| ------------------------- | ------------------- |
| Promise&lt;Uint8Array&gt; | resource对象对应的媒体文件内容 |
H
huangjie 已提交
1949

H
huangjie 已提交
1950 1951
**错误码:**

1952 1953
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
1954 1955
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
1956 1957
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
H
huangjie 已提交
1958

H
huangjie 已提交
1959
**示例:** 
H
HelloCrease 已提交
1960
  ```ts
1961 1962 1963 1964 1965
  let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.media.test').id
  };
H
huangjie 已提交
1966
  try {
1967 1968 1969 1970
    this.context.resourceManager.getMediaContent(resource, 120).then(value => {
      let media = value;
    }).catch(error => {
      console.error(`promise getMediaContent failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
1971 1972
    });
  } catch (error) {
1973
    console.error(`promise getMediaContent failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
1974
  }
H
huangjie 已提交
1975 1976
  ```

1977
### getMediaByName<sup>9+</sup>
H
huangjie 已提交
1978

1979
getMediaByName(resName: string, callback: AsyncCallback&lt;Uint8Array&gt;): void
H
huangjie 已提交
1980

1981
用户获取指定资源ID对应的媒体文件内容,使用callback形式返回字节数组。
H
huangjie 已提交
1982 1983 1984 1985

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
1986

1987 1988 1989 1990
| 参数名      | 类型                              | 必填   | 说明                 |
| -------- | ------------------------------- | ---- | ------------------ |
| resName  | string                          | 是    | 资源名称               |
| callback | AsyncCallback&lt;Uint8Array&gt; | 是    | 异步回调,用于返回获取的媒体文件内容 |
H
huangjie 已提交
1991

H
huangjie 已提交
1992 1993
**错误码:**

1994 1995
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
1996 1997
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
1998 1999
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
H
huangjie 已提交
2000 2001 2002 2003

**示例:** 
  ```ts
  try {
2004 2005 2006 2007 2008 2009
    this.context.resourceManager.getMediaByName("test", (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      } else {
        let media = value;
      }
H
huangjie 已提交
2010 2011
    });
  } catch (error) {
2012
    console.error(`callback getMediaByName failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
2013
  }
H
huangjie 已提交
2014 2015
  ```

2016
### getMediaByName<sup>10+</sup>
H
huangjie 已提交
2017

2018
getMediaByName(resName: string, density: number, callback: AsyncCallback&lt;Uint8Array&gt;): void
H
huangjie 已提交
2019

2020
用户获取指定资源ID对应的指定屏幕密度媒体文件内容,使用callback形式返回字节数组。
H
huangjie 已提交
2021 2022 2023

**系统能力**:SystemCapability.Global.ResourceManager

2024
**参数:** 
H
huangjie 已提交
2025

2026 2027 2028 2029 2030
| 参数名      | 类型                              | 必填   | 说明                 |
| -------- | ------------------------------- | ---- | ------------------ |
| resName  | string                          | 是    | 资源名称               |
| [density](#screendensity)  | number        | 是    | 资源获取需要的屏幕密度,0表示默认屏幕密度    |
| callback | AsyncCallback&lt;Uint8Array&gt; | 是    | 异步回调,用于返回获取的媒体文件内容 |
H
huangjie 已提交
2031

H
huangjie 已提交
2032 2033
**错误码:**

2034 2035
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
2036 2037
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
2038 2039
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
H
huangjie 已提交
2040

2041
**示例:** 
H
huangjie 已提交
2042 2043
  ```ts
  try {
2044 2045 2046 2047 2048 2049 2050
    this.context.resourceManager.getMediaByName("test", 120, (error, value) => {
      if (error != null) {
        console.error(`callback getMediaByName failed, error code: ${error.code}, message: ${error.message}.`);
      } else {
        let media = value;
      }
    });
H
huangjie 已提交
2051
  } catch (error) {
2052
    console.error(`callback getMediaByName failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2053 2054 2055
  }
  ```

2056
### getMediaByName<sup>9+</sup>
H
huangjie 已提交
2057

2058
getMediaByName(resName: string): Promise&lt;Uint8Array&gt;
H
huangjie 已提交
2059

2060
用户获取指定资源名称对应的媒体文件内容,使用Promise形式返回字节数组。
H
huangjie 已提交
2061 2062 2063

**系统能力**:SystemCapability.Global.ResourceManager

2064
**参数:** 
H
huangjie 已提交
2065

H
HelloCrease 已提交
2066
| 参数名     | 类型     | 必填   | 说明   |
H
huangjie 已提交
2067
| ------- | ------ | ---- | ---- |
H
HelloCrease 已提交
2068
| resName | string | 是    | 资源名称 |
H
huangjie 已提交
2069 2070

**返回值:**
H
huangjie 已提交
2071

2072 2073 2074
| 类型                        | 说明            |
| ------------------------- | ------------- |
| Promise&lt;Uint8Array&gt; | 资源名称对应的媒体文件内容 |
H
huangjie 已提交
2075

H
huangjie 已提交
2076 2077
**错误码:**

2078 2079
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
2080 2081
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
2082 2083
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
H
huangjie 已提交
2084

2085
**示例:** 
H
HelloCrease 已提交
2086
  ```ts
H
huangjie 已提交
2087
  try {
2088 2089
    this.context.resourceManager.getMediaByName("test").then(value => {
      let media = value;
H
huangjie 已提交
2090
    }).catch(error => {
2091
      console.log("getMediaByName promise error is " + error);
H
huangjie 已提交
2092 2093
    });
  } catch (error) {
2094
    console.error(`promise getMediaByName failed, error code: ${error.code}, message: ${error.message}.`)
H
huangjie 已提交
2095
  }
H
huangjie 已提交
2096 2097
  ```

2098
### getMediaByName<sup>10+</sup>
H
huangjie 已提交
2099

2100
getMediaByName(resName: string, density: number): Promise&lt;Uint8Array&gt;
H
huangjie 已提交
2101

2102
用户获取指定资源名称对应的指定屏幕密度媒体文件内容,使用Promise形式返回字节数组。
H
huangjie 已提交
2103 2104 2105

**系统能力**:SystemCapability.Global.ResourceManager

2106
**参数:** 
H
huangjie 已提交
2107

2108 2109 2110 2111 2112 2113 2114 2115 2116 2117
| 参数名     | 类型     | 必填   | 说明   |
| ------- | ------ | ---- | ---- |
| resName | string | 是    | 资源名称 |
| [density](#screendensity)  | number                          | 是    | 资源获取需要的屏幕密度,0表示默认屏幕密度    |

**返回值:**

| 类型                        | 说明            |
| ------------------------- | ------------- |
| Promise&lt;Uint8Array&gt; | 资源名称对应的媒体文件内容 |
H
huangjie 已提交
2118

H
huangjie 已提交
2119 2120
**错误码:**

2121 2122
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
2123 2124
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
2125 2126
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
H
huangjie 已提交
2127

H
huangjie 已提交
2128
**示例:** 
H
HelloCrease 已提交
2129
  ```ts
H
huangjie 已提交
2130
  try {
2131 2132 2133 2134
    this.context.resourceManager.getMediaByName("test", 120).then(value => {
      let media = value;
    }).catch(error => {
      console.error(`promise getMediaByName failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2135 2136
    });
  } catch (error) {
2137
    console.error(`promise getMediaByName failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2138
  }
H
huangjie 已提交
2139 2140
  ```

2141
### getMediaContentBase64Sync<sup>10+</sup>
H
huangjie 已提交
2142

2143
getMediaContentBase64Sync(resId: number, density?: number): string
H
huangjie 已提交
2144

2145
用户获取指定资源ID对应的默认或指定的屏幕密度图片资源Base64编码,使用同步方式返回字符串。
H
huangjie 已提交
2146 2147 2148 2149

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
2150

2151 2152 2153 2154
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |
| [density](#screendensity) | number | 否    | 资源获取需要的屏幕密度,0或缺省表示默认屏幕密度 |
H
huangjie 已提交
2155

H
huangjie 已提交
2156 2157
**返回值:**

2158 2159 2160
| 类型                    | 说明          |
| -------- | ----------- |
| string   | 资源ID对应的图片资源Base64编码 |
H
huangjie 已提交
2161

H
huangjie 已提交
2162 2163
**错误码:**

2164 2165
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
2166 2167
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
2168 2169
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
H
huangjie 已提交
2170

H
huangjie 已提交
2171
**示例:** 
H
HelloCrease 已提交
2172
  ```ts
H
huangjie 已提交
2173
  try {
2174
    this.context.resourceManager.getMediaContentBase64Sync($r('app.media.test').id); // 默认屏幕密度
H
huangjie 已提交
2175
  } catch (error) {
2176 2177 2178 2179 2180 2181 2182
    console.error(`getMediaContentBase64Sync failed, error code: ${error.code}, message: ${error.message}.`);
  }

  try {
    this.context.resourceManager.getMediaContentBase64Sync($r('app.media.test').id, 120); // 指定屏幕密度
  } catch (error) {
    console.error(`getMediaContentBase64Sync failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2183
  }
H
huangjie 已提交
2184 2185
  ```

2186
### getMediaContentBase64Sync<sup>10+</sup>
H
huangjie 已提交
2187

2188
getMediaContentBase64Sync(resource: Resource, density?: number): string
H
huangjie 已提交
2189

2190
用户获取指定resource对象对应的默认或指定的屏幕密度图片资源Base64编码,使用同步方式返回字符串。
H
huangjie 已提交
2191 2192 2193

**系统能力**:SystemCapability.Global.ResourceManager

2194 2195
**模型约束**:此接口仅可在Stage模型下使用。

H
huangjie 已提交
2196
**参数:** 
H
huangjie 已提交
2197

2198 2199 2200 2201 2202 2203 2204 2205 2206 2207
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resource | [Resource](#resource9) | 是    | 资源信息 |
| [density](#screendensity) | number | 否    | 资源获取需要的屏幕密度,0或缺省表示默认屏幕密度 |

**返回值:**

| 类型                    | 说明          |
| --------------------- | ----------- |
| string | resource对象对应的图片资源Base64编码 |
H
huangjie 已提交
2208

H
huangjie 已提交
2209 2210
**错误码:**

2211 2212
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
2213 2214
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
2215 2216
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
H
huangjie 已提交
2217

H
huangjie 已提交
2218
**示例:** 
H
HelloCrease 已提交
2219
  ```ts
2220 2221 2222 2223 2224
  let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.media.test').id
  };
H
huangjie 已提交
2225
  try {
2226
    this.context.resourceManager.getMediaContentBase64Sync(resource); // 默认屏幕密度
H
huangjie 已提交
2227
  } catch (error) {
2228 2229 2230 2231 2232 2233 2234
    console.error(`getMediaContentBase64Sync failed, error code: ${error.code}, message: ${error.message}.`);
  }

  try {
    this.context.resourceManager.getMediaContentBase64Sync(resource, 120); // 指定屏幕密度
  } catch (error) {
    console.error(`getMediaContentBase64Sync failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2235
  }
H
huangjie 已提交
2236 2237
  ```

2238
### getMediaContentBase64<sup>9+</sup>
Z
zt147369 已提交
2239

2240
getMediaContentBase64(resId: number, callback: AsyncCallback&lt;string&gt;): void
Z
zt147369 已提交
2241

2242
用户获取指定资源ID对应的图片资源Base64编码,使用callback形式返回字符串。
Z
zt147369 已提交
2243 2244 2245

**系统能力**:SystemCapability.Global.ResourceManager

2246
**参数:** Content
Z
zt147369 已提交
2247

2248 2249 2250 2251
| 参数名      | 类型                          | 必填   | 说明                       |
| -------- | --------------------------- | ---- | ------------------------ |
| resId    | number                      | 是    | 资源ID值                    |
| callback | AsyncCallback&lt;string&gt; | 是    | 异步回调,用于返回获取的图片资源Base64编码 |
Z
zt147369 已提交
2252 2253 2254

**错误码:**

2255 2256
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

Z
zt147369 已提交
2257 2258
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
2259 2260
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
Z
zt147369 已提交
2261 2262 2263 2264

**示例:** 
  ```ts
  try {
2265 2266 2267 2268 2269 2270
    this.context.resourceManager.getMediaContentBase64($r('app.media.test').id, (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      } else {
        let media = value;
      }
Z
zt147369 已提交
2271 2272
    });
  } catch (error) {
2273
    console.error(`callback getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
2274 2275 2276
  }
  ```

2277
### getMediaContentBase64<sup>10+</sup>
H
huangjie 已提交
2278

2279
getMediaContentBase64(resId: number, density: number, callback: AsyncCallback&lt;string&gt;): void
H
huangjie 已提交
2280

2281
用户获取指定资源ID对应的指定屏幕密度图片资源Base64编码,使用callback形式返回字符串。
H
huangjie 已提交
2282 2283 2284 2285

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
2286

2287 2288 2289 2290 2291
| 参数名      | 类型                          | 必填   | 说明                       |
| -------- | --------------------------- | ---- | ------------------------ |
| resId    | number                      | 是    | 资源ID值                    |
| [density](#screendensity)  | number        | 是    | 资源获取需要的屏幕密度,0表示默认屏幕密度    |
| callback | AsyncCallback&lt;string&gt; | 是    | 异步回调,用于返回获取的图片资源Base64编码 |
H
huangjie 已提交
2292

H
huangjie 已提交
2293 2294
**错误码:**

2295 2296
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
2297 2298
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
2299 2300
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
H
huangjie 已提交
2301

H
huangjie 已提交
2302
**示例:** 
H
HelloCrease 已提交
2303
  ```ts
H
huangjie 已提交
2304
  try {
2305 2306 2307 2308
    this.context.resourceManager.getMediaContentBase64($r('app.media.test').id, 120, (error, value) => {
      if (error != null) {
        console.error(`callback getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`);
      } else {
H
huangjie 已提交
2309
        let media = value;
2310
      }
H
huangjie 已提交
2311 2312
    });
  } catch (error) {
2313
    console.error(`callback getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2314
  }
H
huangjie 已提交
2315 2316
  ```

2317
### getMediaContentBase64<sup>9+</sup>
Z
zt147369 已提交
2318

2319
getMediaContentBase64(resId: number): Promise&lt;string&gt;
Z
zt147369 已提交
2320

2321
用户获取指定资源ID对应的图片资源Base64编码,使用Promise形式返回字符串。
Z
zt147369 已提交
2322 2323 2324 2325 2326

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 

2327 2328 2329
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |
Z
zt147369 已提交
2330 2331 2332

**返回值:**

2333 2334 2335
| 类型                    | 说明                   |
| --------------------- | -------------------- |
| Promise&lt;string&gt; | 资源ID值对应的图片资源Base64编码 |
Z
zt147369 已提交
2336 2337 2338

**错误码:**

2339 2340
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

Z
zt147369 已提交
2341 2342
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
2343 2344
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
Z
zt147369 已提交
2345 2346 2347 2348

**示例:** 
  ```ts
  try {
2349 2350
    this.context.resourceManager.getMediaContentBase64($r('app.media.test').id).then(value => {
      let media = value;
Z
zt147369 已提交
2351
    }).catch(error => {
2352
      console.log("getMediaContentBase64 promise error is " + error);
Z
zt147369 已提交
2353 2354
    });
  } catch (error) {
2355
    console.error(`promise getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
2356 2357 2358
  }
  ```

2359
### getMediaContentBase64<sup>10+</sup>
H
huangjie 已提交
2360

2361
getMediaContentBase64(resId: number, density: number): Promise&lt;string&gt;
H
huangjie 已提交
2362

2363
用户获取指定资源ID对应的指定屏幕密度图片资源Base64编码,使用Promise形式返回字符串。
H
huangjie 已提交
2364 2365 2366 2367

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
2368

2369 2370 2371 2372 2373 2374 2375 2376 2377 2378
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |
| [density](#screendensity)  | number                          | 是    | 资源获取需要的屏幕密度,0表示默认屏幕密度    |

**返回值:**

| 类型                    | 说明                   |
| --------------------- | -------------------- |
| Promise&lt;string&gt; | 资源ID值对应的图片资源Base64编码 |
H
huangjie 已提交
2379

H
huangjie 已提交
2380 2381
**错误码:**

2382 2383
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
2384 2385
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
2386 2387
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
H
huangjie 已提交
2388

H
huangjie 已提交
2389
**示例:** 
H
HelloCrease 已提交
2390
  ```ts
H
huangjie 已提交
2391
  try {
2392 2393 2394 2395
    this.context.resourceManager.getMediaContentBase64($r('app.media.test').id, 120).then(value => {
      let media = value;
    }).catch(error => {
      console.error(`promise getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2396 2397
    });
  } catch (error) {
2398
    console.error(`promise getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2399
  }
H
huangjie 已提交
2400 2401
  ```

2402
### getMediaContentBase64<sup>9+</sup>
Z
zt147369 已提交
2403

2404
getMediaContentBase64(resource: Resource, callback: AsyncCallback&lt;string&gt;): void
Z
zt147369 已提交
2405

2406
用户获取指定resource对象对应的图片资源Base64编码,使用callback形式返回字符串。
Z
zt147369 已提交
2407 2408 2409

**系统能力**:SystemCapability.Global.ResourceManager

2410 2411 2412
**模型约束**:此接口仅可在Stage模型下使用。

**参数:**
Z
zt147369 已提交
2413 2414 2415

| 参数名      | 类型                          | 必填   | 说明                       |
| -------- | --------------------------- | ---- | ------------------------ |
2416
| resource | [Resource](#resource9)      | 是    | 资源信息                     |
Z
zt147369 已提交
2417 2418 2419 2420
| callback | AsyncCallback&lt;string&gt; | 是    | 异步回调,用于返回获取的图片资源Base64编码 |

**错误码:**

2421 2422
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

Z
zt147369 已提交
2423 2424
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
2425 2426
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
Z
zt147369 已提交
2427 2428 2429

**示例:** 
  ```ts
2430 2431 2432 2433 2434
  let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.media.test').id
  };
Z
zt147369 已提交
2435
  try {
2436 2437 2438 2439 2440 2441
    this.context.resourceManager.getMediaContentBase64(resource, (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      } else {
        let media = value;
      }
Z
zt147369 已提交
2442 2443
    });
  } catch (error) {
2444
    console.error(`callback getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
2445 2446 2447
  }
  ```

2448
### getMediaContentBase64<sup>10+</sup>
H
huangjie 已提交
2449

2450
getMediaContentBase64(resource: Resource, density: number, callback: AsyncCallback&lt;string&gt;): void
H
huangjie 已提交
2451

2452
用户获取指定resource对象对应的指定屏幕密度图片资源Base64编码,使用callback形式返回字符串。
H
huangjie 已提交
2453 2454 2455

**系统能力**:SystemCapability.Global.ResourceManager

2456
**模型约束**:此接口仅可在Stage模型下使用。
H
huangjie 已提交
2457

2458
**参数:**
H
huangjie 已提交
2459

2460 2461 2462 2463 2464
| 参数名      | 类型                          | 必填   | 说明                       |
| -------- | --------------------------- | ---- | ------------------------ |
| resource | [Resource](#resource9)      | 是    | 资源信息                     |
| [density](#screendensity)  | number        | 是    | 资源获取需要的屏幕密度,0表示默认屏幕密度    |
| callback | AsyncCallback&lt;string&gt; | 是    | 异步回调,用于返回获取的图片资源Base64编码 |
H
huangjie 已提交
2465

H
huangjie 已提交
2466 2467
**错误码:**

2468 2469
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
2470 2471
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
2472 2473
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
H
huangjie 已提交
2474

H
huangjie 已提交
2475
**示例:** 
H
HelloCrease 已提交
2476
  ```ts
2477 2478 2479 2480 2481
  let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.media.test').id
  };
H
huangjie 已提交
2482
  try {
2483 2484 2485 2486
    this.context.resourceManager.getMediaContentBase64(resource, 120, (error, value) => {
      if (error != null) {
        console.error(`callback getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`);
      } else {
H
huangjie 已提交
2487
        let media = value;
2488
      }
H
huangjie 已提交
2489 2490
    });
  } catch (error) {
2491
    console.error(`callback getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2492
  }
H
huangjie 已提交
2493 2494
  ```

2495
### getMediaContentBase64<sup>9+</sup>
Z
zt147369 已提交
2496

2497
getMediaContentBase64(resource: Resource): Promise&lt;string&gt;
Z
zt147369 已提交
2498

2499
用户获取指定resource对象对应的图片资源Base64编码,使用Promise形式返回字符串。
Z
zt147369 已提交
2500 2501 2502

**系统能力**:SystemCapability.Global.ResourceManager

2503 2504
**模型约束**:此接口仅可在Stage模型下使用。

Z
zt147369 已提交
2505 2506
**参数:** 

2507 2508 2509
| 参数名      | 类型                     | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
| resource | [Resource](#resource9) | 是    | 资源信息 |
Z
zt147369 已提交
2510 2511 2512

**返回值:**

2513 2514 2515
| 类型                    | 说明                        |
| --------------------- | ------------------------- |
| Promise&lt;string&gt; | resource对象对应的图片资源Base64编码 |
Z
zt147369 已提交
2516 2517 2518

**错误码:**

2519 2520
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

Z
zt147369 已提交
2521 2522
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
2523 2524
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
Z
zt147369 已提交
2525 2526 2527

**示例:** 
  ```ts
2528 2529 2530 2531 2532
  let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.media.test').id
  };
Z
zt147369 已提交
2533
  try {
2534 2535
    this.context.resourceManager.getMediaContentBase64(resource).then(value => {
      let media = value;
Z
zt147369 已提交
2536
    }).catch(error => {
2537
      console.log("getMediaContentBase64 promise error is " + error);
Z
zt147369 已提交
2538 2539
    });
  } catch (error) {
2540
    console.error(`promise getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
2541 2542 2543
  }
  ```

2544
### getMediaContentBase64<sup>10+</sup>
H
huangjie 已提交
2545

2546
getMediaContentBase64(resource: Resource, density: number): Promise&lt;string&gt;
H
huangjie 已提交
2547

2548
用户获取指定resource对象对应的指定屏幕密度图片资源Base64编码,使用Promise形式返回字符串。
H
huangjie 已提交
2549 2550 2551

**系统能力**:SystemCapability.Global.ResourceManager

2552 2553
**模型约束**:此接口仅可在Stage模型下使用。

H
huangjie 已提交
2554
**参数:** 
H
huangjie 已提交
2555

2556 2557 2558 2559 2560 2561 2562 2563 2564 2565
| 参数名      | 类型                     | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
| resource | [Resource](#resource9) | 是    | 资源信息 |
| [density](#screendensity)  | number                          | 是    | 资源获取需要的屏幕密度,0表示默认屏幕密度    |

**返回值:**

| 类型                    | 说明                        |
| --------------------- | ------------------------- |
| Promise&lt;string&gt; | resource对象对应的图片资源Base64编码 |
H
huangjie 已提交
2566

H
huangjie 已提交
2567 2568
**错误码:**

2569 2570
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
2571 2572
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
2573 2574
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
H
huangjie 已提交
2575

H
huangjie 已提交
2576
**示例:** 
H
HelloCrease 已提交
2577
  ```ts
2578 2579 2580 2581 2582
  let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.media.test').id
  };
H
huangjie 已提交
2583
  try {
2584 2585 2586 2587
    this.context.resourceManager.getMediaContentBase64(resource, 120).then(value => {
      let media = value;
    }).catch(error => {
      console.error(`promise getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2588 2589
    });
  } catch (error) {
2590
    console.error(`promise getMediaContentBase64 failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2591
  }
H
huangjie 已提交
2592 2593
  ```

2594
### getMediaBase64ByName<sup>9+</sup>
H
huangjie 已提交
2595

2596
getMediaBase64ByName(resName: string, callback: AsyncCallback&lt;string&gt;): void
H
huangjie 已提交
2597

2598
用户获取指定资源名称对应的图片资源Base64编码,使用callback形式返回字符串。
H
huangjie 已提交
2599 2600 2601 2602

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
2603

2604 2605 2606 2607
| 参数名      | 类型                          | 必填   | 说明                       |
| -------- | --------------------------- | ---- | ------------------------ |
| resName  | string                      | 是    | 资源名称                     |
| callback | AsyncCallback&lt;string&gt; | 是    | 异步回调,用于返回获取的图片资源Base64编码 |
H
huangjie 已提交
2608

H
huangjie 已提交
2609 2610
**错误码:**

2611 2612
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
2613 2614
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
2615 2616
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
H
huangjie 已提交
2617

H
huangjie 已提交
2618
**示例:** 
H
HelloCrease 已提交
2619
  ```ts
H
huangjie 已提交
2620
  try {
2621 2622 2623 2624 2625 2626
    this.context.resourceManager.getMediaBase64ByName("test", (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      } else {
        let media = value;
      }
H
huangjie 已提交
2627 2628
    });
  } catch (error) {
2629
    console.error(`callback getMediaBase64ByName failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2630
  }
H
huangjie 已提交
2631 2632
  ```

2633
### getMediaBase64ByName<sup>10+</sup>
H
huangjie 已提交
2634

2635
getMediaBase64ByName(resName: string, density: number, callback: AsyncCallback&lt;string&gt;): void
H
huangjie 已提交
2636

2637
用户获取指定资源名称对应的指定屏幕密度图片资源Base64编码,使用callback形式返回字符串。
H
huangjie 已提交
2638 2639 2640 2641

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
2642

2643 2644 2645 2646 2647
| 参数名      | 类型                          | 必填   | 说明                       |
| -------- | --------------------------- | ---- | ------------------------ |
| resName  | string                      | 是    | 资源名称                     |
| [density](#screendensity)  | number        | 是    | 资源获取需要的屏幕密度,0表示默认屏幕密度    |
| callback | AsyncCallback&lt;string&gt; | 是    | 异步回调,用于返回获取的图片资源Base64编码 |
H
huangjie 已提交
2648

H
huangjie 已提交
2649 2650
**错误码:**

2651 2652
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
2653 2654
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
2655 2656
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
H
huangjie 已提交
2657

H
huangjie 已提交
2658
**示例:** 
H
HelloCrease 已提交
2659
  ```ts
H
huangjie 已提交
2660
  try {
2661 2662 2663 2664 2665 2666 2667
    this.context.resourceManager.getMediaBase64ByName("test", 120, (error, value) => {
      if (error != null) {
        console.error(`callback getMediaBase64ByName failed, error code: ${error.code}, message: ${error.message}.`);
      } else {
        let media = value;
      }
    });
H
huangjie 已提交
2668
  } catch (error) {
2669
    console.error(`callback getMediaBase64ByName failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2670
  }
H
huangjie 已提交
2671 2672
  ```

2673
### getMediaBase64ByName<sup>9+</sup>
Z
zt147369 已提交
2674

2675
getMediaBase64ByName(resName: string): Promise&lt;string&gt;
Z
zt147369 已提交
2676

2677
用户获取指定资源名称对应的图片资源Base64编码,使用Promise形式返回字符串。
Z
zt147369 已提交
2678 2679 2680 2681 2682

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 

2683 2684 2685
| 参数名     | 类型     | 必填   | 说明   |
| ------- | ------ | ---- | ---- |
| resName | string | 是    | 资源名称 |
Z
zt147369 已提交
2686 2687 2688

**返回值:**

2689 2690 2691
| 类型                    | 说明                  |
| --------------------- | ------------------- |
| Promise&lt;string&gt; | 资源名称对应的图片资源Base64编码 |
Z
zt147369 已提交
2692 2693 2694

**错误码:**

2695 2696
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

Z
zt147369 已提交
2697
| 错误码ID | 错误信息 |
2698 2699 2700
| -------- | ---------------------------------------- |
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
Z
zt147369 已提交
2701 2702 2703 2704

**示例:** 
  ```ts
  try {
2705 2706 2707 2708 2709
    this.context.resourceManager.getMediaBase64ByName("test").then(value => {
      let media = value;
    }).catch(error => {
      console.log("getMediaBase64ByName promise error is " + error);
    });
Z
zt147369 已提交
2710
  } catch (error) {
2711
    console.error(`promise getMediaBase64ByName failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
2712 2713 2714
  }
  ```

2715
### getMediaBase64ByName<sup>10+</sup>
2716

2717
getMediaBase64ByName(resName: string, density: number): Promise&lt;string&gt;
2718

2719
用户获取指定资源名称对应的指定屏幕密度图片资源Base64编码,使用Promise形式返回字符串。
2720 2721 2722 2723

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
2724

2725 2726 2727 2728
| 参数名     | 类型     | 必填   | 说明   |
| ------- | ------ | ---- | ---- |
| resName | string | 是    | 资源名称 |
| [density](#screendensity)  | number                          | 是    | 资源获取需要的屏幕密度,0表示默认屏幕密度    |
2729

H
huangjie 已提交
2730 2731
**返回值:**

2732 2733 2734
| 类型                    | 说明                  |
| --------------------- | ------------------- |
| Promise&lt;string&gt; | 资源名称对应的图片资源Base64编码 |
2735

H
huangjie 已提交
2736 2737
**错误码:**

2738 2739
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
2740 2741
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
2742 2743
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
H
huangjie 已提交
2744

2745
**示例:** 
H
HelloCrease 已提交
2746
  ```ts
H
huangjie 已提交
2747
  try {
2748 2749 2750 2751 2752
    this.context.resourceManager.getMediaBase64ByName("test", 120).then(value => {
      let media = value;
    }).catch(error => {
      console.error(`promise getMediaBase64ByName failed, error code: ${error.code}, message: ${error.message}.`);
    });
H
huangjie 已提交
2753
  } catch (error) {
2754
    console.error(`promise getMediaBase64ByName failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2755
  }
2756 2757
  ```

2758
### getDrawableDescriptor<sup>10+</sup>
Z
zt147369 已提交
2759

2760
getDrawableDescriptor(resId: number, density?: number): DrawableDescriptor;
Z
zt147369 已提交
2761

2762
用户获取指定资源ID对应的DrawableDescriptor对象,使用同步方式返回资源对应的DrawableDescriptor,用于图标的显示。
Z
zt147369 已提交
2763 2764 2765

**系统能力**:SystemCapability.Global.ResourceManager

2766
**参数:**
Z
zt147369 已提交
2767

2768 2769 2770 2771
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |
| [density](#screendensity) | number | 否    | 资源获取需要的屏幕密度,0或缺省表示默认屏幕密度 |
Z
zt147369 已提交
2772 2773 2774

**返回值:**

2775 2776 2777
| 类型     | 说明         |
| ------ | ---------- |
| DrawableDescriptor | 资源ID值对应的DrawableDescriptor对象 |
Z
zt147369 已提交
2778 2779 2780

**错误码:**

2781 2782
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

Z
zt147369 已提交
2783 2784 2785 2786 2787
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |

2788
**示例:**
Z
zt147369 已提交
2789 2790
  ```ts
  try {
2791
    this.context.resourceManager.getDrawableDescriptor($r('app.media.icon').id);
Z
zt147369 已提交
2792
  } catch (error) {
2793
    console.error(`getDrawableDescriptor failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
2794
  }
2795 2796 2797 2798 2799 2800
  try {
    this.context.resourceManager.getDrawableDescriptor($r('app.media.icon').id, 120);
  } catch (error) {
    console.error(`getDrawableDescriptor failed, error code: ${error.code}, message: ${error.message}.`);
  }
  ```
Z
zt147369 已提交
2801

2802
### getDrawableDescriptor<sup>10+</sup>
H
huangjie 已提交
2803

2804
getDrawableDescriptor(resource: Resource, density?: number): DrawableDescriptor;
H
huangjie 已提交
2805

2806
用户获取指定resource对应的DrawableDescriptor对象,使用同步方式返回资源对应的DrawableDescriptor,用于图标的显示。
H
huangjie 已提交
2807 2808 2809

**系统能力**:SystemCapability.Global.ResourceManager

2810
**模型约束**:此接口仅可在Stage模型下使用。
H
huangjie 已提交
2811

2812 2813 2814 2815 2816 2817
**参数:**

| 参数名      | 类型                     | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
| resource | [Resource](#resource9) | 是    | 资源信息 |
| [density](#screendensity) | number | 否    | 资源获取需要的屏幕密度,0或缺省表示默认屏幕密度 |
H
huangjie 已提交
2818

H
huangjie 已提交
2819 2820
**返回值:**

2821 2822 2823
| 类型      | 说明                |
| ------- | ----------------- |
| DrawableDescriptor | 资源ID值对应的DrawableDescriptor对象 |
H
huangjie 已提交
2824

H
huangjie 已提交
2825 2826
**错误码:**

2827 2828
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
2829 2830
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
2831 2832
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
H
huangjie 已提交
2833

2834
**示例:**
H
HelloCrease 已提交
2835
  ```ts
2836 2837 2838 2839 2840
  let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.media.icon').id
  };
H
huangjie 已提交
2841
  try {
2842
    this.context.resourceManager.getDrawableDescriptor(resource);
H
huangjie 已提交
2843
  } catch (error) {
2844 2845 2846 2847 2848 2849
    console.error(`getDrawableDescriptor failed, error code: ${error.code}, message: ${error.message}.`);
  }
  try {
    this.context.resourceManager.getDrawableDescriptor(resource, 120);
  } catch (error) {
    console.error(`getDrawableDescriptor failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2850
  }
H
huangjie 已提交
2851 2852
  ```

2853
### getDrawableDescriptorByName<sup>10+</sup>
Z
zt147369 已提交
2854

2855
getDrawableDescriptorByName(resName: string, density?: number): DrawableDescriptor;
Z
zt147369 已提交
2856

2857
用户获取指定资源名称对应的DrawableDescriptor对象,使用同步方式返回资源对应的DrawableDescriptor,用于图标的显示。
Z
zt147369 已提交
2858 2859 2860

**系统能力**:SystemCapability.Global.ResourceManager

2861
**参数:**
Z
zt147369 已提交
2862 2863 2864 2865

| 参数名     | 类型     | 必填   | 说明   |
| ------- | ------ | ---- | ---- |
| resName | string | 是    | 资源名称 |
2866
| [density](#screendensity) | number | 否    | 资源获取需要的屏幕密度,0或缺省表示默认屏幕密度 |
Z
zt147369 已提交
2867 2868 2869

**返回值:**

2870 2871 2872
| 类型     | 说明        |
| ------ | --------- |
| DrawableDescriptor | 资源ID值对应的DrawableDescriptor对象 |
Z
zt147369 已提交
2873 2874 2875

**错误码:**

2876 2877
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

Z
zt147369 已提交
2878 2879 2880 2881 2882
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |

2883
**示例:**
Z
zt147369 已提交
2884 2885
  ```ts
  try {
2886
    this.context.resourceManager.getDrawableDescriptorByName('icon');
Z
zt147369 已提交
2887
  } catch (error) {
2888
    console.error(`getDrawableDescriptorByName failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
2889
  }
2890 2891 2892 2893 2894 2895
  try {
    this.context.resourceManager.getDrawableDescriptorByName('icon', 120);
  } catch (error) {
    console.error(`getDrawableDescriptorByName failed, error code: ${error.code}, message: ${error.message}.`);
  }
  ```
Z
zt147369 已提交
2896

H
huangjie 已提交
2897
### getBoolean<sup>9+</sup>
H
huangjie 已提交
2898 2899 2900 2901 2902 2903 2904 2905

getBoolean(resId: number): boolean

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

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
2906

H
huangjie 已提交
2907 2908 2909 2910
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |

H
huangjie 已提交
2911 2912
**返回值:**

H
HelloCrease 已提交
2913 2914
| 类型      | 说明           |
| ------- | ------------ |
H
huangjie 已提交
2915 2916
| boolean | 资源ID值对应的布尔结果 |

H
huangjie 已提交
2917 2918
**错误码:**

2919 2920
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
2921 2922
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
2923 2924 2925
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
2926

H
huangjie 已提交
2927
**示例:** 
H
HelloCrease 已提交
2928
  ```ts
H
huangjie 已提交
2929 2930 2931
  try {
    this.context.resourceManager.getBoolean($r('app.boolean.boolean_test').id);
  } catch (error) {
Z
zt147369 已提交
2932
    console.error(`getBoolean failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2933
  }
H
huangjie 已提交
2934
  ```
2935 2936 2937 2938 2939 2940 2941 2942
### getBoolean<sup>9+</sup>

getBoolean(resource: Resource): boolean

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

**系统能力**:SystemCapability.Global.ResourceManager

Z
zt147369 已提交
2943 2944
**模型约束**:此接口仅可在Stage模型下使用。

2945
**参数:** 
H
huangjie 已提交
2946

H
HelloCrease 已提交
2947 2948
| 参数名      | 类型                     | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
2949
| resource | [Resource](#resource9) | 是    | 资源信息 |
2950

H
huangjie 已提交
2951 2952
**返回值:**

H
HelloCrease 已提交
2953 2954
| 类型      | 说明                |
| ------- | ----------------- |
2955 2956
| boolean | resource对象对应的布尔结果 |

H
huangjie 已提交
2957 2958
**错误码:**

2959 2960
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
2961 2962
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
2963 2964 2965
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
2966

2967
**示例:** 
H
HelloCrease 已提交
2968
  ```ts
2969
  let resource = {
2970 2971 2972
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.boolean.boolean_test').id
2973
  };
H
huangjie 已提交
2974 2975 2976
  try {
    this.context.resourceManager.getBoolean(resource);
  } catch (error) {
Z
zt147369 已提交
2977
    console.error(`getBoolean failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
2978
  }
2979
  ```
H
huangjie 已提交
2980 2981 2982 2983 2984 2985 2986 2987 2988 2989

### getBooleanByName<sup>9+</sup>

getBooleanByName(resName: string): boolean

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

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
2990

H
HelloCrease 已提交
2991 2992 2993
| 参数名     | 类型     | 必填   | 说明   |
| ------- | ------ | ---- | ---- |
| resName | string | 是    | 资源名称 |
H
huangjie 已提交
2994

H
huangjie 已提交
2995 2996
**返回值:**

H
HelloCrease 已提交
2997 2998
| 类型      | 说明          |
| ------- | ----------- |
H
huangjie 已提交
2999 3000
| boolean | 资源名称对应的布尔结果 |

H
huangjie 已提交
3001 3002
**错误码:**

3003 3004
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
3005 3006
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
3007 3008 3009
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
3010

H
huangjie 已提交
3011
**示例:** 
H
HelloCrease 已提交
3012
  ```ts
H
huangjie 已提交
3013 3014 3015
  try {
    this.context.resourceManager.getBooleanByName("boolean_test");
  } catch (error) {
Z
zt147369 已提交
3016
    console.error(`getBooleanByName failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
3017
  }
H
huangjie 已提交
3018 3019
  ```

H
huangjie 已提交
3020
### getNumber<sup>9+</sup>
H
huangjie 已提交
3021 3022 3023 3024 3025 3026 3027 3028

getNumber(resId: number): number

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

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
3029

H
huangjie 已提交
3030 3031 3032 3033
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |

H
huangjie 已提交
3034 3035
**返回值:**

H
HelloCrease 已提交
3036
| 类型     | 说明         |
H
huangjie 已提交
3037
| ------ | ---------- | 
H
huangjie 已提交
3038
| number | 资源ID值对应的数值。Integer对应的是原数值,float对应的是真实像素点值,具体参考示例代码 |
H
huangjie 已提交
3039

H
huangjie 已提交
3040 3041
**错误码:**

3042 3043
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
3044 3045
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
3046 3047 3048
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
3049

H
huangjie 已提交
3050
**示例:** 
H
HelloCrease 已提交
3051
  ```ts
H
huangjie 已提交
3052
  try {
H
huangjie 已提交
3053
    this.context.resourceManager.getNumber($r('app.integer.integer_test').id); // integer对应返回的是原数值
H
huangjie 已提交
3054
  } catch (error) {
Z
zt147369 已提交
3055
    console.error(`getNumber failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
3056 3057 3058
  }

  try {
H
huangjie 已提交
3059
    this.context.resourceManager.getNumber($r('app.float.float_test').id); // float对应返回的是真实像素点值
H
huangjie 已提交
3060
  } catch (error) {
Z
zt147369 已提交
3061
    console.error(`getNumber failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
3062
  }
H
huangjie 已提交
3063 3064
  ```

3065 3066 3067 3068 3069 3070 3071 3072
### getNumber<sup>9+</sup>

getNumber(resource: Resource): number

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

**系统能力**:SystemCapability.Global.ResourceManager

Z
zt147369 已提交
3073 3074
**模型约束**:此接口仅可在Stage模型下使用。

3075
**参数:** 
H
huangjie 已提交
3076

H
HelloCrease 已提交
3077 3078
| 参数名      | 类型                     | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
3079
| resource | [Resource](#resource9) | 是    | 资源信息 |
3080

H
huangjie 已提交
3081 3082
**返回值:**

H
HelloCrease 已提交
3083 3084
| 类型     | 说明              |
| ------ | --------------- |
H
huangjie 已提交
3085
| number | resource对象对应的数值。Integer对应的是原数值,float对应的是真实像素点值, 具体参考示例代码 |
3086

H
huangjie 已提交
3087 3088
**错误码:**

3089 3090
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
3091 3092
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
3093 3094 3095
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
3096

3097
**示例:** 
H
HelloCrease 已提交
3098
  ```ts
3099
  let resource = {
3100 3101 3102
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.integer.integer_test').id
3103
  };
H
huangjie 已提交
3104
  try {
H
huangjie 已提交
3105
    this.context.resourceManager.getNumber(resource);// integer对应返回的是原数值, float对应返回的是真实像素点值
H
huangjie 已提交
3106
  } catch (error) {
Z
zt147369 已提交
3107
    console.error(`getNumber failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
3108
  }
3109 3110
  ```

H
huangjie 已提交
3111 3112 3113 3114 3115 3116 3117 3118 3119
### getNumberByName<sup>9+</sup>

getNumberByName(resName: string): number

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

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
3120

H
HelloCrease 已提交
3121 3122
| 参数名     | 类型     | 必填   | 说明   |
| ------- | ------ | ---- | ---- |
H
huangjie 已提交
3123 3124
| resName | string | 是    | 资源名称 |

H
huangjie 已提交
3125 3126
**返回值:**

H
HelloCrease 已提交
3127 3128
| 类型     | 说明        |
| ------ | --------- |
H
huangjie 已提交
3129 3130
| number | 资源名称对应的数值 |

H
huangjie 已提交
3131 3132
**错误码:**

3133 3134
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
3135 3136
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
H
huangjie 已提交
3137 3138 3139
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
3140 3141 3142 3143 3144 3145

**示例:** 
  ```ts
  try {
    this.context.resourceManager.getNumberByName("integer_test");
  } catch (error) {
Z
zt147369 已提交
3146
    console.error(`getNumberByName failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
3147 3148 3149 3150 3151
  }

  try {
    this.context.resourceManager.getNumberByName("float_test");
  } catch (error) {
Z
zt147369 已提交
3152
    console.error(`getNumberByName failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
3153 3154 3155
  }
  ```

3156
### getColorSync<sup>10+</sup>
H
huangjie 已提交
3157

3158
getColorSync(resId: number) : number;
H
huangjie 已提交
3159

3160
用户获取指定资源ID对应的颜色值,使用同步方式返回其对应的颜色值。
H
huangjie 已提交
3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171

**系统能力**:SystemCapability.Global.ResourceManager

**参数:**

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

**返回值:**

3172 3173 3174
| 类型     | 说明          |
| ------ | ----------- |
| number | 资源ID值对应的颜色值(十进制) |
H
huangjie 已提交
3175 3176 3177

**错误码:**

3178 3179
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
3180 3181 3182 3183
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
3184
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
3185 3186 3187 3188

**示例:**
  ```ts
  try {
3189
    this.context.resourceManager.getColorSync($r('app.color.test').id);
H
huangjie 已提交
3190
  } catch (error) {
3191
    console.error(`getColorSync failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
3192 3193 3194
  }
  ```

3195
### getColorSync<sup>10+</sup>
H
huangjie 已提交
3196

3197
getColorSync(resource: Resource): number
H
huangjie 已提交
3198

3199
用户获取指定resource对象对应的颜色值,使用同步方式返回其对应的颜色值。
H
huangjie 已提交
3200 3201 3202

**系统能力**:SystemCapability.Global.ResourceManager

Z
zt147369 已提交
3203 3204
**模型约束**:此接口仅可在Stage模型下使用。

H
huangjie 已提交
3205 3206 3207 3208 3209 3210 3211 3212
**参数:**

| 参数名      | 类型                     | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
| resource | [Resource](#resource9) | 是    | 资源信息 |

**返回值:**

3213 3214 3215
| 类型     | 说明               |
| ------ | ---------------- |
| number | resource对象对应的颜色值(十进制) |
H
huangjie 已提交
3216 3217 3218

**错误码:**

3219 3220
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
3221 3222 3223 3224
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001001  | If the resId invalid.                       |
| 9001002  | If the resource not found by resId.         |
3225
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
3226 3227 3228 3229

**示例:**
  ```ts
  let resource = {
3230 3231 3232
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.color.test').id
H
huangjie 已提交
3233 3234
  };
  try {
3235
    this.context.resourceManager.getColorSync(resource);
H
huangjie 已提交
3236
  } catch (error) {
3237
    console.error(`getColorSync failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
3238 3239 3240
  }
  ```

3241
### getColorByNameSync<sup>10+</sup>
H
huangjie 已提交
3242

3243
getColorByNameSync(resName: string) : number;
H
huangjie 已提交
3244

3245
用户获取指定资源名称对应的颜色值,使用同步方式返回其对应的颜色值。
H
huangjie 已提交
3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256

**系统能力**:SystemCapability.Global.ResourceManager

**参数:**

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

**返回值:**

3257 3258 3259
| 类型     | 说明         |
| ------ | ---------- |
| number | 资源名称对应的颜色值(十进制) |
H
huangjie 已提交
3260 3261 3262

**错误码:**

3263 3264
以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

H
huangjie 已提交
3265 3266 3267 3268
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001003  | If the resName invalid.                     |
| 9001004  | If the resource not found by resName.       |
3269
| 9001006  | If the resource re-ref too much.            |
H
huangjie 已提交
3270 3271 3272 3273

**示例:**
  ```ts
  try {
3274
    this.context.resourceManager.getColorByNameSync("test");
H
huangjie 已提交
3275
  } catch (error) {
3276
    console.error(`getColorByNameSync failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
3277 3278
  }
  ```
H
huangjie 已提交
3279

H
huangjie 已提交
3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306
### getColor<sup>10+</sup>

getColor(resId: number, callback: AsyncCallback&lt;number&gt;): void;

用户获取指定资源ID对应的颜色值,使用callback形式返回其对应的颜色值。

**系统能力:** SystemCapability.Global.ResourceManager

**参数:**

| 参数名      | 类型                          | 必填   | 说明              |
| -------- | --------------------------- | ---- | --------------- |
| resId    | number                      | 是    | 资源ID值           |
| callback | AsyncCallback&lt;number&gt; | 是    | 异步回调,用于返回获取的颜色值(十进制) |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

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

**示例Stage:**
  ```ts
3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317
  try {
    this.context.resourceManager.getColor($r('app.color.test').id, (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      } else {
        let str = value;
      }
    });
  } catch (error) {
    console.error(`callback getColor failed, error code: ${error.code}, message: ${error.message}.`);
  }
H
huangjie 已提交
3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353
  ```

### getColor<sup>10+</sup>

getColor(resId: number): Promise&lt;number&gt;

用户获取指定资源ID对应的颜色值,使用Promise形式返回对应其对应的颜色值。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:**

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

**返回值:**

| 类型                    | 说明          |
| --------------------- | ----------- |
| Promise&lt;number&gt; | 资源ID值对应的颜色值(十进制) |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

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

**示例:**
  ```ts
  try {
    this.context.resourceManager.getColor($r('app.color.test').id).then(value => {
3354
      let str = value;
H
huangjie 已提交
3355
    }).catch(error => {
3356
      console.log("getColor promise error is " + error);
H
huangjie 已提交
3357 3358
    });
  } catch (error) {
Z
zt147369 已提交
3359
    console.error(`promise getColor failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370
  }
  ```

### getColor<sup>10+</sup>

getColor(resource: Resource, callback: AsyncCallback&lt;number&gt;): void;

用户获取指定resource对象对应的颜色值,使用callback形式返回其对应的颜色值。

**系统能力:** SystemCapability.Global.ResourceManager

Z
zt147369 已提交
3371 3372
**模型约束**:此接口仅可在Stage模型下使用。

H
huangjie 已提交
3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392
**参数:**

| 参数名      | 类型                          | 必填   | 说明              |
| -------- | --------------------------- | ---- | --------------- |
| resource | [Resource](#resource9)      | 是    | 资源信息            |
| callback | AsyncCallback&lt;number&gt; | 是    | 异步回调,用于返回获取的颜色值(十进制) |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

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

**示例:**
  ```ts
  let resource = {
3393 3394 3395
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.color.test').id
H
huangjie 已提交
3396 3397 3398
  };
  try {
    this.context.resourceManager.getColor(resource, (error, value) => {
3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542
      if (error != null) {
        console.log("error is " + error);
      } else {
        let str = value;
      }
    });
  } catch (error) {
    console.error(`callback getColor failed, error code: ${error.code}, message: ${error.message}.`);
  }
  ```

### getColor<sup>10+</sup>

getColor(resource: Resource): Promise&lt;number&gt;;

用户获取指定resource对象对应的颜色值,使用Promise形式返回其对应的颜色值。

**系统能力**:SystemCapability.Global.ResourceManager

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

**参数:**

| 参数名      | 类型                     | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
| resource | [Resource](#resource9) | 是    | 资源信息 |

**返回值:**

| 类型                    | 说明               |
| --------------------- | ---------------- |
| Promise&lt;number&gt; | resource对象对应的颜色值(十进制) |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

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

**示例:**
  ```ts
  let resource = {
    bundleName: "com.example.myapplication",
    moduleName: "entry",
    id: $r('app.color.test').id
  };
  try {
    this.context.resourceManager.getColor(resource).then(value => {
      let str = value;
    }).catch(error => {
      console.log("getColor promise error is " + error);
    });
  } catch (error) {
    console.error(`promise getColor failed, error code: ${error.code}, message: ${error.message}.`);
  }
  ```

### getColorByName<sup>10+</sup>

getColorByName(resName: string, callback: AsyncCallback&lt;number&gt;): void

用户获取指定资源名称对应的颜色值,使用callback形式返回其对应的颜色值。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:**

| 参数名      | 类型                          | 必填   | 说明              |
| -------- | --------------------------- | ---- | --------------- |
| resName  | string                      | 是    | 资源名称            |
| callback | AsyncCallback&lt;number&gt; | 是    | 异步回调,用于返回获取的颜色值(十进制) |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

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

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

### getColorByName<sup>10+</sup>

getColorByName(resName: string): Promise&lt;number&gt;

用户获取指定资源名称对应的颜色值,使用Promise形式返回其对应的颜色值。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:**

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

**返回值:**

| 类型                    | 说明         |
| --------------------- | ---------- |
| Promise&lt;number&gt; | 资源名称对应的颜色值(十进制) |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

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

**示例:**
  ```ts
  try {
    this.context.resourceManager.getColorByName("test").then(value => {
      let string = value;
    }).catch(error => {
      console.log("getColorByName promise error is " + error);
    });
  } catch (error) {
    console.error(`promise getColorByName failed, error code: ${error.code}, message: ${error.message}.`);
  }
  ```

3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579
### getRawFileContentSync<sup>10+</sup>

getRawFileContentSync(path: string): Uint8Array

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

**系统能力:** SystemCapability.Global.ResourceManager

**参数:**

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

**返回值:**

| 类型                    | 说明         |
| --------------------- | ---------- |
| Uint8Array | 返回获取的rawfile文件内容 |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001005  | If the resource not found by path.          |

**示例:**
  ```ts
  try {
    this.context.resourceManager.getRawFileContentSync("test.txt");
  } catch (error) {
    console.error(`getRawFileContentSync failed, error code: ${error.code}, message: ${error.message}.`);
  }
  ```

3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658
### getRawFileContent<sup>9+</sup>

getRawFileContent(path: string, callback: AsyncCallback&lt;Uint8Array&gt;): void

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

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 

| 参数名      | 类型                              | 必填   | 说明                      |
| -------- | ------------------------------- | ---- | ----------------------- |
| path     | string                          | 是    | rawfile文件路径             |
| callback | AsyncCallback&lt;Uint8Array&gt; | 是    | 异步回调,用于返回获取的rawfile文件内容 |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001005  | If the resource not found by path.          |

**示例:** 
  ```ts
  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}.`);
  }
  ```

### getRawFileContent<sup>9+</sup>

getRawFileContent(path: string): Promise&lt;Uint8Array&gt;

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

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 

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

**返回值:**

| 类型                        | 说明          |
| ------------------------- | ----------- |
| Promise&lt;Uint8Array&gt; | rawfile文件内容 |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001005  | If the resource not found by path.          |

**示例:** 
  ```ts
  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}.`);
  }
  ```

3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695
### getRawFileListSync<sup>10+</sup>

getRawFileListSync(path: string): Array\<string\>

用户获取resources/rawfile目录下文件夹及文件列表,使用同步形式返回文件列表的字符串数组。

**系统能力:** SystemCapability.Global.ResourceManager

**参数:**

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

**返回值:**

| 类型                        | 说明          |
| ------------------------- | ----------- |
| Array\<string\> | rawfile文件夹下的列表(包含子文件夹和文件) |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001005  | If the resource not found by path.       |

**示例:**
  ```ts
  try { // 传入""表示获取rawfile根目录下的文件列表
    this.context.resourceManager.getRawFileListSync("")
  } catch (error) {
    console.error(`getRawFileListSync failed, error code: ${error.code}, message: ${error.message}.`);
  }
  ```

3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774
### getRawFileList<sup>10+</sup>

getRawFileList(path: string, callback: AsyncCallback&lt;Array\<string\>&gt;): void;

用户获取resources/rawfile目录下文件夹及文件列表,使用callback形式返回文件列表的字符串数组。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 

| 参数名      | 类型                              | 必填   | 说明                      |
| -------- | ------------------------------- | ---- | ----------------------- |
| path     | string                          | 是    | rawfile文件夹路径             |
| callback | AsyncCallback&lt;Array\<string\>&gt; | 是 | 异步回调,用于返回获取rawfile文件目录下的文件列表 |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001005  | If the resource not found by path.       |

**示例:** 
  ```ts
  try { // 传入""表示获取rawfile根目录下的文件列表
    this.context.resourceManager.getRawFileList("", (error, value) => {
      if (error != null) {
        console.error(`callback getRawFileList failed, error code: ${error.code}, message: ${error.message}.`);
      } else {
        let rawFile = value;
      }
    });
  } catch (error) {
    console.error(`callback getRawFileList failed, error code: ${error.code}, message: ${error.message}.`);
  }
  ```

### getRawFileList<sup>10+</sup>

getRawFileList(path: string): Promise&lt;Array\<string\>&gt;

用户获取resources/rawfile目录下文件夹及文件列表,使用Promise形式返回文件列表字符串数组。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 

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

**返回值:**

| 类型                        | 说明          |
| ------------------------- | ----------- |
| Promise&lt;Array\<string\>&gt; | rawfile文件目录下的文件列表 |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001005  | If the resource not found by path.          |

**示例:** 
  ```ts
  try { // 传入""表示获取rawfile根目录下的文件列表
    this.context.resourceManager.getRawFileList("").then(value => {
      let rawFile = value;
    }).catch(error => {
      console.error(`promise getRawFileList failed, error code: ${error.code}, message: ${error.message}.`);
    });
  } catch (error) {
    console.error(`promise getRawFileList failed, error code: ${error.code}, message: ${error.message}.`);
  }
  ```

3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811
### getRawFdSync<sup>10+</sup>

getRawFdSync(path: string): RawFileDescriptor

用户获取resources/rawfile目录下对应rawfile文件的descriptor。

**系统能力:** SystemCapability.Global.ResourceManager

**参数:**

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

**返回值:**

| 类型                        | 说明          |
| ------------------------- | ----------- |
| [RawFileDescriptor](#rawfiledescriptor8) | rawfile文件的descriptor |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001005  | If the resource not found by path.          |

**示例:**
  ```ts
  try {
    this.context.resourceManager.getRawFdSync("test.txt");
  } catch (error) {
    console.error(`getRawFdSync failed, error code: ${error.code}, message: ${error.message}.`);
  }
  ```

3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845
### getRawFd<sup>9+</sup>

getRawFd(path: string, callback: AsyncCallback&lt;RawFileDescriptor&gt;): void

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

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 

| 参数名      | 类型                                       | 必填   | 说明                               |
| -------- | ---------------------------------------- | ---- | -------------------------------- |
| path     | string                                   | 是    | rawfile文件路径                      |
| callback | AsyncCallback&lt;[RawFileDescriptor](#rawfiledescriptor8)&gt; | 是    | 异步回调,用于返回获取的rawfile文件的descriptor |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001005  | If the resource not found by path.          |

**示例:** 
  ```ts
  try {
    this.context.resourceManager.getRawFd("test.xml", (error, value) => {
      if (error != null) {
        console.log(`callback getRawFd failed error code: ${error.code}, message: ${error.message}.`);
      } else {
        let fd = value.fd;
        let offset = value.offset;
        let length = value.length;
      }
H
huangjie 已提交
3846 3847
    });
  } catch (error) {
3848
    console.error(`callback getRawFd failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
3849 3850 3851
  }
  ```

3852
### getRawFd<sup>9+</sup>
H
huangjie 已提交
3853

3854
getRawFd(path: string): Promise&lt;RawFileDescriptor&gt;
H
huangjie 已提交
3855

3856
用户获取resources/rawfile目录下对应rawfile文件的descriptor,使用Promise形式返回。
H
huangjie 已提交
3857 3858 3859

**系统能力**:SystemCapability.Global.ResourceManager

3860
**参数:** 
H
huangjie 已提交
3861

3862 3863 3864
| 参数名  | 类型     | 必填   | 说明          |
| ---- | ------ | ---- | ----------- |
| path | string | 是    | rawfile文件路径 |
H
huangjie 已提交
3865 3866 3867

**返回值:**

3868 3869 3870
| 类型                                       | 说明                  |
| ---------------------------------------- | ------------------- |
| Promise&lt;[RawFileDescriptor](#rawfiledescriptor8)&gt; | rawfile文件descriptor |
H
huangjie 已提交
3871 3872 3873 3874 3875 3876 3877

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
3878
| 9001005  | If the resource not found by path.          |
H
huangjie 已提交
3879

3880
**示例:** 
H
huangjie 已提交
3881 3882
  ```ts
  try {
3883 3884 3885 3886
    this.context.resourceManager.getRawFd("test.xml").then(value => {
      let fd = value.fd;
      let offset = value.offset;
      let length = value.length;
H
huangjie 已提交
3887
    }).catch(error => {
3888
      console.log(`promise getRawFd error error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
3889 3890
    });
  } catch (error) {
3891
    console.error(`promise getRawFd failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
3892 3893 3894
  }
  ```

3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925
### closeRawFdSync<sup>10+</sup>

closeRawFdSync(path: string): void

用户关闭resources/rawfile目录下rawfile文件的descriptor。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:**

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

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

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

**示例:**
  ```ts
  try {
    this.context.resourceManager.closeRawFdSync("test.txt");
  } catch (error) {
    console.error(`closeRawFd failed, error code: ${error.code}, message: ${error.message}.`);
  }
  ```

3926
### closeRawFd<sup>9+</sup>
H
huangjie 已提交
3927

3928
closeRawFd(path: string, callback: AsyncCallback&lt;void&gt;): void
H
huangjie 已提交
3929

3930
用户关闭resources/rawfile目录下rawfile文件的descriptor,使用callback形式返回。
H
huangjie 已提交
3931 3932 3933

**系统能力**:SystemCapability.Global.ResourceManager

3934
**参数:** 
H
huangjie 已提交
3935

3936 3937 3938 3939
| 参数名      | 类型                        | 必填   | 说明          |
| -------- | ------------------------- | ---- | ----------- |
| path     | string                    | 是    | rawfile文件路径 |
| callback | AsyncCallback&lt;void&gt; | 是    | 异步回调        |
H
huangjie 已提交
3940 3941 3942 3943 3944 3945 3946

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
3947
| 9001005  | The resource not found by path.          |
H
huangjie 已提交
3948

3949
**示例:** 
H
huangjie 已提交
3950 3951
  ```ts
  try {
3952 3953 3954 3955
    this.context.resourceManager.closeRawFd("test.xml", (error, value) => {
      if (error != null) {
        console.log("error is " + error);
      }
H
huangjie 已提交
3956 3957
    });
  } catch (error) {
3958
    console.error(`callback closeRawFd failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
3959 3960 3961
  }
  ```

3962
### closeRawFd<sup>9+</sup>
H
huangjie 已提交
3963

3964
closeRawFd(path: string): Promise&lt;void&gt;
H
huangjie 已提交
3965

3966
用户关闭resources/rawfile目录下rawfile文件的descriptor,使用Promise形式返回。
H
huangjie 已提交
3967 3968 3969

**系统能力**:SystemCapability.Global.ResourceManager

3970
**参数:** 
H
huangjie 已提交
3971

3972 3973 3974
| 参数名  | 类型     | 必填   | 说明          |
| ---- | ------ | ---- | ----------- |
| path | string | 是    | rawfile文件路径 |
H
huangjie 已提交
3975 3976 3977

**返回值:**

3978 3979 3980
| 类型                  | 说明   |
| ------------------- | ---- |
| Promise&lt;void&gt; | 无返回值 |
H
huangjie 已提交
3981 3982 3983 3984 3985 3986 3987

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
3988
| 9001005  | If the resource not found by path.          |
H
huangjie 已提交
3989

3990
**示例:** 
H
huangjie 已提交
3991 3992
  ```ts
  try {
3993 3994
    this.context.resourceManager.closeRawFd("test.xml").then(value => {
      let result = value;
H
huangjie 已提交
3995
    }).catch(error => {
3996
      console.log("closeRawFd promise error is " + error);
H
huangjie 已提交
3997 3998
    });
  } catch (error) {
3999
    console.error(`promise closeRawFd failed, error code: ${error.code}, message: ${error.message}.`);
H
huangjie 已提交
4000 4001 4002
  }
  ```

4003
### getConfiguration
H
huangjie 已提交
4004

4005
getConfiguration(callback: AsyncCallback&lt;Configuration&gt;): void
H
huangjie 已提交
4006

4007
用户获取设备的Configuration,使用callback形式返回Configuration对象。
H
huangjie 已提交
4008 4009 4010

**系统能力**:SystemCapability.Global.ResourceManager

4011
**参数:** 
H
huangjie 已提交
4012

4013 4014 4015
| 参数名      | 类型                                       | 必填   | 说明                        |
| -------- | ---------------------------------------- | ---- | ------------------------- |
| callback | AsyncCallback&lt;[Configuration](#configuration)&gt; | 是    | 异步回调,用于返回设备的Configuration |
H
huangjie 已提交
4016

4017
**示例:** 
H
huangjie 已提交
4018 4019
  ```ts
  try {
4020 4021 4022 4023 4024 4025 4026 4027
    this.context.resourceManager.getConfiguration((error, value) => {
      if (error != null) {
        console.error("getConfiguration callback error is " + error);
      } else {
        let direction = value.direction;
        let locale = value.locale;
      }
    });
H
huangjie 已提交
4028
  } catch (error) {
4029
    console.error("getConfiguration callback error is " + error);
H
huangjie 已提交
4030 4031 4032
  }
  ```

4033
### getConfiguration
H
huangjie 已提交
4034

4035
getConfiguration(): Promise&lt;Configuration&gt;
H
huangjie 已提交
4036

4037
用户获取设备的Configuration,使用Promise形式返回Configuration对象。
H
huangjie 已提交
4038 4039 4040

**系统能力**:SystemCapability.Global.ResourceManager

4041
**返回值:**
Z
zt147369 已提交
4042

4043 4044 4045
| 类型                                       | 说明               |
| ---------------------------------------- | ---------------- |
| Promise&lt;[Configuration](#configuration)&gt; | 设备的Configuration |
H
huangjie 已提交
4046

4047 4048 4049 4050 4051 4052 4053 4054 4055 4056 4057 4058 4059
**示例:** 
  ```ts
  try {
    this.context.resourceManager.getConfiguration().then(value => {
      let direction = value.direction;
      let locale = value.locale;
    }).catch(error => {
      console.error("getConfiguration promise error is " + error);
    });
  } catch (error) {
    console.error("getConfiguration promise error is " + error);
  }
  ```
H
huangjie 已提交
4060

4061
### getDeviceCapability
H
huangjie 已提交
4062

4063
getDeviceCapability(callback: AsyncCallback&lt;DeviceCapability&gt;): void
H
huangjie 已提交
4064

4065
用户获取设备的DeviceCapability,使用callback形式返回DeviceCapability对象。
H
huangjie 已提交
4066

4067
**系统能力**:SystemCapability.Global.ResourceManager
H
huangjie 已提交
4068

4069
**参数:** 
H
huangjie 已提交
4070

4071 4072 4073 4074 4075
| 参数名      | 类型                                       | 必填   | 说明                           |
| -------- | ---------------------------------------- | ---- | ---------------------------- |
| callback | AsyncCallback&lt;[DeviceCapability](#devicecapability)&gt; | 是    | 异步回调,用于返回设备的DeviceCapability |

**示例:** 
H
huangjie 已提交
4076 4077
  ```ts
  try {
4078 4079 4080 4081 4082 4083 4084 4085
    this.context.resourceManager.getDeviceCapability((error, value) => {
      if (error != null) {
        console.error("getDeviceCapability callback error is " + error);
      } else {
        let screenDensity = value.screenDensity;
        let deviceType = value.deviceType;
      }
    });
H
huangjie 已提交
4086
  } catch (error) {
4087
    console.error("getDeviceCapability callback error is " + error);
H
huangjie 已提交
4088 4089 4090
  }
  ```

4091
### getDeviceCapability
H
huangjie 已提交
4092

4093
getDeviceCapability(): Promise&lt;DeviceCapability&gt;
H
huangjie 已提交
4094

4095
用户获取设备的DeviceCapability,使用Promise形式返回DeviceCapability对象。
H
huangjie 已提交
4096 4097 4098

**系统能力**:SystemCapability.Global.ResourceManager

4099
**返回值:**
H
huangjie 已提交
4100

4101 4102 4103
| 类型                                       | 说明                  |
| ---------------------------------------- | ------------------- |
| Promise&lt;[DeviceCapability](#devicecapability)&gt; | 设备的DeviceCapability |
H
huangjie 已提交
4104

4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117
**示例:** 
  ```ts
  try {
    this.context.resourceManager.getDeviceCapability().then(value => {
      let screenDensity = value.screenDensity;
      let deviceType = value.deviceType;
    }).catch(error => {
      console.error("getDeviceCapability promise error is " + error);
    });
  } catch (error) {
    console.error("getDeviceCapability promise error is " + error);
  }
  ```
H
huangjie 已提交
4118

4119
### release<sup>7+</sup>
H
huangjie 已提交
4120

4121
release()
H
huangjie 已提交
4122

4123
用户释放创建的resourceManager。
H
huangjie 已提交
4124

4125
**系统能力**:SystemCapability.Global.ResourceManager
H
huangjie 已提交
4126

4127
**示例:** 
H
huangjie 已提交
4128 4129
  ```ts
  try {
4130
    this.context.resourceManager.release();
H
huangjie 已提交
4131
  } catch (error) {
4132
    console.error("release error is " + error);
H
huangjie 已提交
4133 4134 4135
  }
  ```

4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147 4148 4149 4150 4151 4152 4153 4154 4155 4156 4157 4158 4159 4160 4161
### addResource<sup>10+</sup>

addResource(path: string) : void;

应用运行时,加载指定的资源路径,实现资源覆盖。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:**

| 参数名      | 类型                     | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
| path | string | 是    | 资源路径 |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001010  | If the overlay path is invalid.            |

**示例:**
  ```ts
  let path = getContext().bundleCodeDir + "/library1-default-signed.hsp";
  try {
4162
    this.context.resourceManager.addResource(path);
4163
  } catch (error) {
4164
    console.error(`addResource failed, error code: ${error.code}, message: ${error.message}.`);
Z
zt147369 已提交
4165
  }
4166 4167 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 4180 4181 4182 4183 4184 4185 4186 4187 4188 4189 4190 4191 4192 4193
  ```

### removeResource<sup>10+</sup>

removeResource(path: string) : void;

用户运行时,移除指定的资源路径,还原被覆盖前的资源。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:**

| 参数名      | 类型            | 必填   | 说明   |
| -------- | ---------------------- | ---- | ---- |
| path | string | 是    | 资源路径 |

**错误码:**

以下错误码的详细介绍请参见[资源管理错误码](../errorcodes/errorcode-resource-manager.md)。

| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 9001010  | If the overlay path is invalid.            |

**示例:**
  ```ts
  let path = getContext().bundleCodeDir + "/library1-default-signed.hsp";
  try {
4194
    this.resmgr.removeResource(path);
4195
  } catch (error) {
4196
    console.error(`removeResource failed, error code: ${error.code}, message: ${error.message}.`);
4197 4198 4199
  }
  ```

H
huangjie 已提交
4200 4201 4202 4203 4204 4205 4206 4207 4208 4209 4210
### getString<sup>(deprecated)</sup>

getString(resId: number, callback: AsyncCallback&lt;string&gt;): void

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

从API version 9开始不再维护,建议使用[getStringValue](#getstringvalue9)代替。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
4211

H
huangjie 已提交
4212 4213 4214 4215 4216
| 参数名      | 类型                          | 必填   | 说明              |
| -------- | --------------------------- | ---- | --------------- |
| resId    | number                      | 是    | 资源ID值           |
| callback | AsyncCallback&lt;string&gt; | 是    | 异步回调,用于返回获取的字符串 |

4217
**示例:**
H
huangjie 已提交
4218 4219 4220 4221 4222 4223 4224 4225 4226 4227 4228 4229 4230 4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241
  ```ts
  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;
          }
      });
  });
  ```


### getString<sup>(deprecated)</sup>

getString(resId: number): Promise&lt;string&gt;

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

从API version 9开始不再维护,建议使用[getStringValue](#getstringvalue9-1)代替。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
4242

H
huangjie 已提交
4243 4244 4245 4246
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |

H
huangjie 已提交
4247 4248
**返回值:**

H
huangjie 已提交
4249 4250 4251 4252 4253 4254 4255 4256 4257 4258 4259 4260 4261 4262 4263 4264 4265 4266 4267 4268 4269 4270 4271 4272 4273 4274 4275
| 类型                    | 说明          |
| --------------------- | ----------- |
| Promise&lt;string&gt; | 资源ID值对应的字符串 |

**示例:** 
  ```ts
  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);
      });
  });
  ```


### getStringArray<sup>(deprecated)</sup>

getStringArray(resId: number, callback: AsyncCallback&lt;Array&lt;string&gt;&gt;): void

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

从API version 9开始不再维护,建议使用[getStringArrayValue](#getstringarrayvalue9)代替。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
4276

H
huangjie 已提交
4277 4278 4279 4280 4281 4282 4283 4284 4285 4286 4287 4288 4289 4290 4291 4292 4293 4294 4295 4296 4297 4298 4299 4300 4301 4302 4303 4304 4305 4306
| 参数名      | 类型                                       | 必填   | 说明                |
| -------- | ---------------------------------------- | ---- | ----------------- |
| resId    | number                                   | 是    | 资源ID值             |
| callback | AsyncCallback&lt;Array&lt;string&gt;&gt; | 是    | 异步回调,用于返回获取的字符串数组 |

**示例:** 
  ```ts
  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;
          }
      });
  });
  ```


### getStringArray<sup>(deprecated)</sup>

getStringArray(resId: number): Promise&lt;Array&lt;string&gt;&gt;

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

从API version 9开始不再维护,建议使用[getStringArrayValue](#getstringarrayvalue9-1)代替。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
4307

H
huangjie 已提交
4308 4309 4310 4311
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |

H
huangjie 已提交
4312 4313
**返回值:**

H
huangjie 已提交
4314 4315 4316 4317
| 类型                                 | 说明            |
| ---------------------------------- | ------------- |
| Promise&lt;Array&lt;string&gt;&gt; | 资源ID值对应的字符串数组 |

H
huangjie 已提交
4318
**示例:** 
H
HelloCrease 已提交
4319
  ```ts
H
huangjie 已提交
4320 4321 4322 4323 4324 4325 4326 4327 4328 4329 4330 4331 4332 4333 4334 4335
  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);
      });
  });
  ```


### getMedia<sup>(deprecated)</sup>

getMedia(resId: number, callback: AsyncCallback&lt;Uint8Array&gt;): void

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

H
huangjie 已提交
4336
从API version 9开始不再维护,建议使用[getMediaContent](#getmediacontent9)代替。
H
huangjie 已提交
4337 4338 4339 4340

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
4341

H
huangjie 已提交
4342 4343 4344 4345 4346 4347 4348 4349 4350 4351 4352 4353 4354 4355 4356 4357 4358 4359 4360 4361 4362 4363 4364 4365 4366
| 参数名      | 类型                              | 必填   | 说明                 |
| -------- | ------------------------------- | ---- | ------------------ |
| resId    | number                          | 是    | 资源ID值              |
| callback | AsyncCallback&lt;Uint8Array&gt; | 是    | 异步回调,用于返回获取的媒体文件内容 |

**示例:** 
  ```ts
  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;
          }
      });
  });
  ```


### getMedia<sup>(deprecated)</sup>

getMedia(resId: number): Promise&lt;Uint8Array&gt;

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

H
huangjie 已提交
4367
从API version 9开始不再维护,建议使用[getMediaContent](#getmediacontent9-1)代替。
H
huangjie 已提交
4368 4369 4370 4371

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
4372

H
huangjie 已提交
4373 4374 4375 4376
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |

H
huangjie 已提交
4377 4378
**返回值:**

H
huangjie 已提交
4379 4380 4381 4382 4383 4384 4385 4386 4387 4388 4389 4390 4391 4392 4393 4394 4395 4396 4397 4398 4399 4400
| 类型                        | 说明             |
| ------------------------- | -------------- |
| Promise&lt;Uint8Array&gt; | 资源ID值对应的媒体文件内容 |

**示例:** 
  ```ts
  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);
      });
  });
  ```


### getMediaBase64<sup>(deprecated)</sup>

getMediaBase64(resId: number, callback: AsyncCallback&lt;string&gt;): void

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

H
huangjie 已提交
4401
从API version 9开始不再维护,建议使用[getMediaContentBase64](#getmediacontentbase649)代替。
H
huangjie 已提交
4402 4403 4404 4405

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
4406

H
huangjie 已提交
4407 4408 4409 4410 4411 4412 4413 4414 4415 4416 4417 4418 4419 4420 4421 4422 4423 4424 4425 4426 4427 4428 4429 4430 4431
| 参数名      | 类型                          | 必填   | 说明                       |
| -------- | --------------------------- | ---- | ------------------------ |
| resId    | number                      | 是    | 资源ID值                    |
| callback | AsyncCallback&lt;string&gt; | 是    | 异步回调,用于返回获取的图片资源Base64编码 |

**示例:** 
  ```ts
  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;
          }
      });
  });
  ```


### getMediaBase64<sup>(deprecated)</sup>

getMediaBase64(resId: number): Promise&lt;string&gt;

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

H
huangjie 已提交
4432
从API version 9开始不再维护,建议使用[getMediaContentBase64](#getmediacontentbase649-1)代替。
H
huangjie 已提交
4433 4434 4435 4436

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
4437

H
huangjie 已提交
4438 4439 4440 4441
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |

H
huangjie 已提交
4442 4443
**返回值:**

H
huangjie 已提交
4444 4445 4446 4447 4448 4449 4450 4451 4452 4453 4454 4455 4456 4457 4458 4459 4460 4461 4462 4463 4464 4465
| 类型                    | 说明                   |
| --------------------- | -------------------- |
| Promise&lt;string&gt; | 资源ID值对应的图片资源Base64编码 |

**示例:** 
  ```ts
  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);
      });
  });
  ```


### getPluralString<sup>(deprecated)</sup>

getPluralString(resId: number, num: number): Promise&lt;string&gt;

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

H
huangjie 已提交
4466
从API version 9开始不再维护,建议使用[getPluralStringValue](#getpluralstringvalue9)代替。
H
huangjie 已提交
4467 4468 4469 4470

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
4471

H
huangjie 已提交
4472 4473 4474 4475 4476
| 参数名   | 类型     | 必填   | 说明    |
| ----- | ------ | ---- | ----- |
| resId | number | 是    | 资源ID值 |
| num   | number | 是    | 数量值   |

H
huangjie 已提交
4477 4478
**返回值:**

H
huangjie 已提交
4479 4480 4481 4482 4483 4484 4485 4486 4487 4488 4489 4490 4491 4492 4493 4494 4495 4496 4497 4498 4499 4500
| 类型                    | 说明                        |
| --------------------- | ------------------------- |
| Promise&lt;string&gt; | 根据提供的数量获取对应ID字符串表示的单复数字符串 |

**示例:** 
  ```ts
  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);
      });
  });
  ```


### getPluralString<sup>(deprecated)</sup>

getPluralString(resId: number, num: number, callback: AsyncCallback&lt;string&gt;): void

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

H
huangjie 已提交
4501
从API version 9开始不再维护,建议使用[getPluralStringValue](#getpluralstringvalue9-1)代替。
H
huangjie 已提交
4502 4503 4504 4505

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
4506

H
huangjie 已提交
4507 4508 4509 4510 4511 4512 4513 4514 4515 4516 4517 4518 4519 4520 4521 4522 4523 4524 4525 4526 4527 4528 4529 4530 4531 4532 4533 4534 4535 4536 4537
| 参数名      | 类型                          | 必填   | 说明                              |
| -------- | --------------------------- | ---- | ------------------------------- |
| resId    | number                      | 是    | 资源ID值                           |
| num      | number                      | 是    | 数量值                             |
| callback | AsyncCallback&lt;string&gt; | 是    | 异步回调,返回根据指定数量获取指定ID字符串表示的单复数字符串 |

**示例:** 
  ```ts
  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;
          }
      });
  });
  ```


### getRawFile<sup>(deprecated)</sup>

getRawFile(path: string, callback: AsyncCallback&lt;Uint8Array&gt;): void

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

从API version 9开始不再维护,建议使用[getRawFileContent](#getrawfilecontent9)代替。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
4538

H
huangjie 已提交
4539 4540 4541 4542 4543 4544 4545 4546 4547 4548 4549 4550 4551 4552 4553 4554 4555 4556 4557 4558 4559 4560 4561 4562 4563 4564 4565 4566 4567 4568
| 参数名      | 类型                              | 必填   | 说明                      |
| -------- | ------------------------------- | ---- | ----------------------- |
| path     | string                          | 是    | rawfile文件路径             |
| callback | AsyncCallback&lt;Uint8Array&gt; | 是    | 异步回调,用于返回获取的rawfile文件内容 |

**示例:** 
  ```ts
  resourceManager.getResourceManager((error, mgr) => {
      mgr.getRawFile("test.xml", (error, value) => {
          if (error != null) {
              console.log("error is " + error);
          } else {
              let rawFile = value;
          }
      });
  });
  ```


### getRawFile<sup>(deprecated)</sup>

getRawFile(path: string): Promise&lt;Uint8Array&gt;

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

从API version 9开始不再维护,建议使用[getRawFileContent](#getrawfilecontent9-1)代替。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
4569

H
huangjie 已提交
4570 4571 4572 4573
| 参数名  | 类型     | 必填   | 说明          |
| ---- | ------ | ---- | ----------- |
| path | string | 是    | rawfile文件路径 |

H
huangjie 已提交
4574 4575
**返回值:**

H
huangjie 已提交
4576 4577 4578 4579 4580 4581 4582 4583 4584 4585 4586 4587 4588 4589 4590 4591 4592 4593 4594 4595 4596 4597 4598 4599 4600 4601 4602
| 类型                        | 说明          |
| ------------------------- | ----------- |
| Promise&lt;Uint8Array&gt; | rawfile文件内容 |

**示例:** 
  ```ts
  resourceManager.getResourceManager((error, mgr) => {
      mgr.getRawFile("test.xml").then(value => {
          let rawFile = value;
      }).catch(error => {
          console.log("getRawFile promise error is " + error);
      });
  });
  ```


### getRawFileDescriptor<sup>(deprecated)</sup>

getRawFileDescriptor(path: string, callback: AsyncCallback&lt;RawFileDescriptor&gt;): void

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

从API version 9开始不再维护,建议使用[getRawFd](#getrawfd9)代替。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
4603

H
huangjie 已提交
4604 4605 4606 4607 4608 4609 4610 4611 4612 4613 4614 4615 4616 4617 4618 4619 4620 4621 4622 4623 4624 4625 4626 4627 4628 4629 4630 4631 4632 4633 4634
| 参数名      | 类型                                       | 必填   | 说明                               |
| -------- | ---------------------------------------- | ---- | -------------------------------- |
| path     | string                                   | 是    | rawfile文件路径                      |
| callback | AsyncCallback&lt;[RawFileDescriptor](#rawfiledescriptor8)&gt; | 是    | 异步回调,用于返回获取的rawfile文件的descriptor |

**示例:** 
  ```ts
  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;
          }
      });
  });
  ```

### getRawFileDescriptor<sup>(deprecated)</sup>

getRawFileDescriptor(path: string): Promise&lt;RawFileDescriptor&gt;

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

从API version 9开始不再维护,建议使用[getRawFd](#getrawfd9-1)代替。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 
H
huangjie 已提交
4635

H
huangjie 已提交
4636 4637 4638 4639
| 参数名  | 类型     | 必填   | 说明          |
| ---- | ------ | ---- | ----------- |
| path | string | 是    | rawfile文件路径 |

H
huangjie 已提交
4640 4641
**返回值:**

H
huangjie 已提交
4642 4643 4644 4645 4646 4647 4648 4649 4650 4651 4652 4653 4654 4655 4656
| 类型                                       | 说明                  |
| ---------------------------------------- | ------------------- |
| Promise&lt;[RawFileDescriptor](#rawfiledescriptor8)&gt; | rawfile文件descriptor |

**示例:** 
  ```ts
  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);
      });
  });
Z
zt147369 已提交
4657 4658 4659 4660 4661 4662 4663 4664 4665 4666 4667 4668 4669 4670 4671 4672 4673 4674 4675 4676 4677 4678 4679 4680 4681 4682 4683 4684 4685 4686 4687 4688 4689 4690 4691 4692 4693 4694 4695 4696 4697 4698 4699 4700 4701 4702 4703 4704 4705 4706 4707 4708 4709 4710 4711 4712 4713 4714 4715 4716 4717
  ```

### closeRawFileDescriptor<sup>(deprecated)</sup>

closeRawFileDescriptor(path: string, callback: AsyncCallback&lt;void&gt;): void

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

从API version 9开始不再维护,建议使用[closeRawFd](#closerawfd9)代替。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 

| 参数名      | 类型                        | 必填   | 说明          |
| -------- | ------------------------- | ---- | ----------- |
| path     | string                    | 是    | rawfile文件路径 |
| callback | AsyncCallback&lt;void&gt; | 是    | 异步回调        |

**示例:** 
  ```ts
  resourceManager.getResourceManager((error, mgr) => {
      mgr.closeRawFileDescriptor("test.xml", (error, value) => {
          if (error != null) {
              console.log("error is " + error);
          }
      });
  });
  ```

### closeRawFileDescriptor<sup>(deprecated)</sup>

closeRawFileDescriptor(path: string): Promise&lt;void&gt;

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

从API version 9开始不再维护,建议使用[closeRawFd](#closerawfd9-1)代替。

**系统能力**:SystemCapability.Global.ResourceManager

**参数:** 

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

**返回值:**

| 类型                  | 说明   |
| ------------------- | ---- |
| Promise&lt;void&gt; | 无返回值 |

**示例:** 
  ```ts
  resourceManager.getResourceManager((error, mgr) => {
      mgr.closeRawFileDescriptor("test.xml").then(value => {
          let result = value;
      }).catch(error => {
          console.log("closeRawFileDescriptor promise error is " + error);
      });
  });
H
huangjie 已提交
4718
  ```