@ohos.sendableResourceManager (Resource Manager)

The sendableResourceManager module provides the resourceToSendableResource and sendableResourceToResource APIs to implement conversion between Resource and SendableResource objects.

A Resource object can be held by the Sendable class after being converted into a SendableResource object. After cross-thread transmission, the Sendable class converts the SendableResource object into a Resource object and uses it as an input parameter for the API used to obtain resources.

NOTE

The initial APIs of this module are supported since API version 12. Newly added APIs will be marked with a superscript to indicate their earliest API version.

Modules to Import

import { sendableResourceManager } from '@kit.LocalizationKit';

sendableResourceManager.resourceToSendableResource

resourceToSendableResource(resource: Resource): SendableResource

Converts a Resource object to a SendableResource object.

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Global.ResourceManager

Parameters

Name Type Mandatory Description
resource Resource Yes Resource object.

Return value

Type Description
SendableResource SendableResource object after conversion.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 If the input parameter invalid. Possible causes: 1.Incorrect parameter types; 2.Parameter verification failed.

Example

// Resource file path: src/main/resources/base/element/string.json
{
  "string": [
    {
      "name": "test",
      "value": "I'm a test string resource."
    }
  ]
}
import { sendableResourceManager } from '@kit.LocalizationKit';
import { BusinessError } from '@kit.BasicServicesKit';

try {
    let sendableResource: sendableResourceManager.SendableResource = sendableResourceManager.resourceToSendableResource($r('app.string.test'));
} catch (error) {
    let code = (error as BusinessError).code;
    let message = (error as BusinessError).message;
    console.error(`resourceToSendableResource failed, error code: ${code}, message: ${message}.`);
}

sendableResourceManager.sendableResourceToResource

sendableResourceToResource(resource: SendableResource): Resource

Converts a SendableResource object to a Resource object.

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Global.ResourceManager

Parameters

Name Type Mandatory Description
resource SendableResource Yes SendableResource object.

Return value

Type Description
Resource Resource object after conversion.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 If the input parameter invalid. Possible causes: 1.Incorrect parameter types; 2.Parameter verification failed.

Example

// Resource file path: src/main/resources/base/element/string.json
{
  "string": [
    {
      "name": "test",
      "value": "I'm a test string resource."
    }
  ]
}
import { sendableResourceManager } from '@kit.LocalizationKit';
import { BusinessError } from '@kit.BasicServicesKit';

try {
    let resource: sendableResourceManager.Resource = sendableResourceManager.sendableResourceToResource(sendableResourceManager.resourceToSendableResource($r('app.string.test')));
} catch (error) {
    let code = (error as BusinessError).code;
    let message = (error as BusinessError).message;
    console.error(`sendableResourceToResource failed, error code: ${code}, message: ${message}.`);
}

Resource

type Resource = _Resource

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Global.ResourceManager

Type Description
_Resource Defines a Resource object.

SendableResource

type SendableResource = _SendableResource

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Global.ResourceManager

Type Description
_SendableResource SendableResource object.