1e41f4b71Sopenharmony_ci# @ohos.sendableResourceManager (资源管理) 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci资源管理导入sendableResourceManager模块,通过调用[resourceToSendableResource](#sendableresourcemanagerresourcetosendableresource)和[sendableResourceToResource](#sendableresourcemanagersendableresourcetoresource)方法可以将[Resource](#resource)对象和[SendableResource](#sendableresource)对象进行互转。 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ciResource对象通过转换为SendableResource对象后,可以被[Sendable类](../../arkts-utils/sendable-overview.md)持有。Sendable类在跨线程传输后,取出持有的SendableResource对象转为Resource对象,作为参数获取资源。 6e41f4b71Sopenharmony_ci 7e41f4b71Sopenharmony_ci> **说明:** 8e41f4b71Sopenharmony_ci> 9e41f4b71Sopenharmony_ci> 本模块首批接口从API version 12开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 10e41f4b71Sopenharmony_ci 11e41f4b71Sopenharmony_ci## 导入模块 12e41f4b71Sopenharmony_ci 13e41f4b71Sopenharmony_ci```js 14e41f4b71Sopenharmony_ciimport sendableResourceManager from '@ohos.sendableResourceManager'; 15e41f4b71Sopenharmony_ci``` 16e41f4b71Sopenharmony_ci 17e41f4b71Sopenharmony_ci## sendableResourceManager.resourceToSendableResource 18e41f4b71Sopenharmony_ci 19e41f4b71Sopenharmony_ciresourceToSendableResource(resource: Resource): SendableResource 20e41f4b71Sopenharmony_ci 21e41f4b71Sopenharmony_ci将Resource对象转换为SendableResource对象。 22e41f4b71Sopenharmony_ci 23e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Global.ResourceManager 24e41f4b71Sopenharmony_ci 25e41f4b71Sopenharmony_ci**参数:** 26e41f4b71Sopenharmony_ci 27e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 28e41f4b71Sopenharmony_ci| -------- | ---------------------------------------- | ---- | ----------------------------- | 29e41f4b71Sopenharmony_ci| resource | [Resource](#resource) | 是 | Resource对象。 | 30e41f4b71Sopenharmony_ci 31e41f4b71Sopenharmony_ci**返回值:** 32e41f4b71Sopenharmony_ci 33e41f4b71Sopenharmony_ci| 类型 | 说明 | 34e41f4b71Sopenharmony_ci| ------ | ---------------------------- | 35e41f4b71Sopenharmony_ci| [SendableResource](#sendableresource) | 转换后的SendableResource对象。 | 36e41f4b71Sopenharmony_ci 37e41f4b71Sopenharmony_ci**错误码:** 38e41f4b71Sopenharmony_ci 39e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 40e41f4b71Sopenharmony_ci 41e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 42e41f4b71Sopenharmony_ci| -------- | ---------------------------------------- | 43e41f4b71Sopenharmony_ci| 401 | If the input parameter invalid. Possible causes: <br>1.Incorrect parameter types; <br>2.Parameter verification failed. | 44e41f4b71Sopenharmony_ci 45e41f4b71Sopenharmony_ci**示例:** 46e41f4b71Sopenharmony_ci ```js 47e41f4b71Sopenharmony_ciimport sendableResourceManager from '@ohos.sendableResourceManager'; 48e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 49e41f4b71Sopenharmony_ci 50e41f4b71Sopenharmony_citry { 51e41f4b71Sopenharmony_ci let sendableResource: sendableResourceManager.SendableResource = sendableResourceManager.resourceToSendableResource($r('app.string.test')); 52e41f4b71Sopenharmony_ci} catch (error) { 53e41f4b71Sopenharmony_ci let code = (error as BusinessError).code; 54e41f4b71Sopenharmony_ci let message = (error as BusinessError).message; 55e41f4b71Sopenharmony_ci console.error(`resourceToSendableResource failed, error code: ${code}, message: ${message}.`); 56e41f4b71Sopenharmony_ci} 57e41f4b71Sopenharmony_ci ``` 58e41f4b71Sopenharmony_ci 59e41f4b71Sopenharmony_ci## sendableResourceManager.sendableResourceToResource 60e41f4b71Sopenharmony_ci 61e41f4b71Sopenharmony_cisendableResourceToResource(sendableResource: SendableResource): Resource 62e41f4b71Sopenharmony_ci 63e41f4b71Sopenharmony_ci将SendableResource对象转换为Resource对象。 64e41f4b71Sopenharmony_ci 65e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Global.ResourceManager 66e41f4b71Sopenharmony_ci 67e41f4b71Sopenharmony_ci**参数:** 68e41f4b71Sopenharmony_ci 69e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 70e41f4b71Sopenharmony_ci| -------- | ---------------------------------------- | ---- | ----------------------------- | 71e41f4b71Sopenharmony_ci| sendableResource | [SendableResource](#sendableresource) | 是 | SendableResource对象。 | 72e41f4b71Sopenharmony_ci 73e41f4b71Sopenharmony_ci**返回值:** 74e41f4b71Sopenharmony_ci 75e41f4b71Sopenharmony_ci| 类型 | 说明 | 76e41f4b71Sopenharmony_ci| ------ | ---------------------------- | 77e41f4b71Sopenharmony_ci| [Resource](#resource) | 转换后的Resource对象。 | 78e41f4b71Sopenharmony_ci 79e41f4b71Sopenharmony_ci**错误码:** 80e41f4b71Sopenharmony_ci 81e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。 82e41f4b71Sopenharmony_ci 83e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 84e41f4b71Sopenharmony_ci| -------- | ---------------------------------------- | 85e41f4b71Sopenharmony_ci| 401 | If the input parameter invalid. Possible causes: <br>1.Incorrect parameter types; <br>2.Parameter verification failed. | 86e41f4b71Sopenharmony_ci 87e41f4b71Sopenharmony_ci**示例:** 88e41f4b71Sopenharmony_ci ```js 89e41f4b71Sopenharmony_ciimport sendableResourceManager from '@ohos.sendableResourceManager'; 90e41f4b71Sopenharmony_ciimport { BusinessError } from '@ohos.base'; 91e41f4b71Sopenharmony_ci 92e41f4b71Sopenharmony_citry { 93e41f4b71Sopenharmony_ci let resource: sendableResourceManager.Resource = sendableResourceManager.sendableResourceToResource(sendableResourceManager.resourceToSendableResource($r('app.string.test'))); 94e41f4b71Sopenharmony_ci} catch (error) { 95e41f4b71Sopenharmony_ci let code = (error as BusinessError).code; 96e41f4b71Sopenharmony_ci let message = (error as BusinessError).message; 97e41f4b71Sopenharmony_ci console.error(`resourceToSendableResource failed, error code: ${code}, message: ${message}.`); 98e41f4b71Sopenharmony_ci} 99e41f4b71Sopenharmony_ci ``` 100e41f4b71Sopenharmony_ci 101e41f4b71Sopenharmony_ci## Resource 102e41f4b71Sopenharmony_ci 103e41f4b71Sopenharmony_ci表示的Resource资源信息。 104e41f4b71Sopenharmony_ci 105e41f4b71Sopenharmony_ci**系统能力:** 以下各项对应的系统能力均为SystemCapability.Global.ResourceManager 106e41f4b71Sopenharmony_ci 107e41f4b71Sopenharmony_ci**参数:** 108e41f4b71Sopenharmony_ci 109e41f4b71Sopenharmony_ci| 名称 | 类型 | 只读 | 可选 |说明 | 110e41f4b71Sopenharmony_ci| ---------- | ------ | ----- | ---- | ---------------| 111e41f4b71Sopenharmony_ci| bundleName | string | 否 | 否 | 应用的bundle名称。 | 112e41f4b71Sopenharmony_ci| moduleName | string | 否 | 否 | 应用的module名称。 | 113e41f4b71Sopenharmony_ci| id | number | 否 | 否 | 资源的id值。 | 114e41f4b71Sopenharmony_ci| params | any[] | 否 | 是 | 其他资源参数,包括资源名、格式化接口的替换值、复数接口的量词。 | 115e41f4b71Sopenharmony_ci| type | number | 否 | 是 | 资源的类型。 | 116e41f4b71Sopenharmony_ci 117e41f4b71Sopenharmony_ci## SendableResource 118e41f4b71Sopenharmony_ci 119e41f4b71Sopenharmony_ci表示的SendableResource资源信息。 120e41f4b71Sopenharmony_ci 121e41f4b71Sopenharmony_ci**系统能力:** 以下各项对应的系统能力均为SystemCapability.Global.ResourceManager 122e41f4b71Sopenharmony_ci 123e41f4b71Sopenharmony_ci**参数:** 124e41f4b71Sopenharmony_ci 125e41f4b71Sopenharmony_ci| 名称 | 类型 | 只读 | 可选 |说明 | 126e41f4b71Sopenharmony_ci| ---------- | ------ | ----- | ---- | ---------------| 127e41f4b71Sopenharmony_ci| bundleName | string | 否 | 否 | 应用的bundle名称。 | 128e41f4b71Sopenharmony_ci| moduleName | string | 否 | 否 | 应用的module名称。 | 129e41f4b71Sopenharmony_ci| id | number | 否 | 否 | 资源的id值。 | 130e41f4b71Sopenharmony_ci| params | collections.Array<string \| number> | 否 | 是 | 其他资源参数,包括资源名、格式化接口的替换值、复数接口的量词。 | 131e41f4b71Sopenharmony_ci| type | number | 否 | 是 | 资源的类型。 |