AbilityBase

概述

作为Ability Kit的基础定义模块,AbilityBase提供了组件启动参数Want的定义与接口,可以用于应用组件间的信息传递。

系统能力: SystemCapability.Ability.AbilityBase

起始版本: 15

汇总

文件

名称 描述
ability_base_common.h 声明AbilityBase相关错误码。
引用文件:<AbilityKit/ability_base/ability_base_common.h>
:libability_base_want.so
want.h 声明Want相关能力。
引用文件:<AbilityKit/ability_base/want.h>
:libability_base_want.so

枚举

名称 描述
AbilityBase_ErrorCode {
ABILITY_RUNTIME_ERROR_CODE_NO_ERROR = 0,
ABILITY_RUNTIME_ERROR_CODE_PARAM_INVALID = 401,
}
定义AbilityBase相关错误码。

结构体

名称 描述
AbilityBase_Element {
char* bundleName;
char* moduleName;
char* abilityName;
}
Element数据结构。
AbilityBase_Want Want数据结构。

函数

名称 描述
AbilityBase_Want* OH_AbilityBase_CreateWant(AbilityBase_Element element) 创建Want。
AbilityBase_ErrorCode OH_AbilityBase_DestroyWant(AbilityBase_Want* want) 销毁Want。销毁后的Want不可使用,否则会导致未定义行为。
AbilityBase_ErrorCode OH_AbilityBase_SetWantElement(AbilityBase_Want* want, AbilityBase_Element element) 设置Want中由bundleName、moduleName与abilityName组成的Element结构体。
AbilityBase_ErrorCode OH_AbilityBase_GetWantElement(AbilityBase_Want* want, AbilityBase_Element* element) 获取Want中由bundleName、moduleName与abilityName组成的Element结构体。
AbilityBase_ErrorCode OH_AbilityBase_SetWantCharParam(AbilityBase_Want* want, const char* key, const char* value) 设置Want Param参数,Param可参考Want中的parameters参数
AbilityBase_ErrorCode OH_AbilityBase_GetWantCharParam(AbilityBase_Want* want, const char* key, char* value, size_t valueSize) 获取OH_AbilityBase_SetWantCharParam方法设置的Want Param参数。
AbilityBase_ErrorCode OH_AbilityBase_AddWantFd(AbilityBase_Want* want, const char* key, int32_t fd) 添加Want文件描述符,文件描述符可通过fs.open获取。
AbilityBase_ErrorCode OH_AbilityBase_GetWantFd(AbilityBase_Want* want, const char* key, int32_t* fd) 获取Want文件描述符。

枚举类型说明

AbilityBase_ErrorCode

enum AbilityBase_ErrorCode

描述

定义AbilityBase相关错误码。

起始版本: 15

枚举值 描述
ABILITY_BASE_ERROR_CODE_NO_ERROR 操作成功。
ABILITY_BASE_ERROR_CODE_PARAM_INVALID 无效参数。

结构体说明

AbilityBase_Want

AbilityBase_Want

描述

Want数据结构。

起始版本: 15

函数说明

OH_AbilityBase_CreateWant

AbilityBase_Want* OH_AbilityBase_CreateWant(AbilityBase_Element element)

描述

创建Want。

起始版本: 15

参数:

名称 描述
element Element数据结构。

返回:

AbilityBase_Want - want数据结构。

OH_AbilityBase_DestroyWant

AbilityBase_ErrorCode OH_AbilityBase_DestroyWant(AbilityBase_Want* want)

描述

销毁Want。销毁后的Want不可使用,否则会导致未定义行为。

起始版本: 15

参数:

名称 描述
want Want指针。

返回:

ABILITY_BASE_ERROR_CODE_NO_ERROR - 销毁want成功。

ABILITY_BASE_ERROR_CODE_PARAM_INVALID - element参数无效。

OH_AbilityBase_SetWantElement

AbilityBase_ErrorCode OH_AbilityBase_SetWantElement(AbilityBase_Want* want, AbilityBase_Element element)

描述

设置Want中由bundleName、moduleName与abilityName组成的Element结构体。

起始版本: 15

参数:

名称 描述
want Want指针。
element Element结构体。

返回:

ABILITY_BASE_ERROR_CODE_NO_ERROR - 设置element成功。

ABILITY_BASE_ERROR_CODE_PARAM_INVALID - want为空,element参数无效。

OH_AbilityBase_GetWantElement

AbilityBase_ErrorCode OH_AbilityBase_GetWantElement(AbilityBase_Want* want, AbilityBase_Element* element)

描述

获取Want中由bundleName、moduleName与abilityName组成的Element结构体。

起始版本: 15

参数:

名称 描述
want Want指针。
element Element结构体指针。

返回:

ABILITY_BASE_ERROR_CODE_NO_ERROR - 获取element成功。

ABILITY_BASE_ERROR_CODE_PARAM_INVALID - want为空,element参数无效。

OH_AbilityBase_SetWantCharParam

AbilityBase_ErrorCode OH_AbilityBase_SetWantCharParam(AbilityBase_Want* want, const char* key, const char* value)

描述

设置Want Param参数,Param可参考Want中的parameters参数

起始版本: 15

参数:

名称 描述
want Want指针。
key Want中字符串参数索引。
value Want中字符串。

返回:

ABILITY_BASE_ERROR_CODE_NO_ERROR - 设置param成功。

ABILITY_BASE_ERROR_CODE_PARAM_INVALID - want为空或非法入参。

OH_AbilityBase_GetWantCharParam

AbilityBase_ErrorCode OH_AbilityBase_GetWantCharParam(AbilityBase_Want* want, const char* key, char* value, size_t valueSize)

描述

获取OH_AbilityBase_SetWantCharParam方法设置的Want Param参数。

起始版本: 15

参数:

名称 描述
want Want指针。
key Want中字符串参数索引。
value Want中字符串。
valueSize value字符串长度。如果valueSize小于实际需要获取的value长度,则会报ABILITY_BASE_ERROR_CODE_PARAM_INVALID错误。

返回:

ABILITY_BASE_ERROR_CODE_NO_ERROR - 获取param成功。

ABILITY_BASE_ERROR_CODE_PARAM_INVALID - want为空或非法入参。

OH_AbilityBase_AddWantFd

AbilityBase_ErrorCode OH_AbilityBase_AddWantFd(AbilityBase_Want* want, const char* key, int32_t fd)

描述

添加Want文件描述符,文件描述符可通过fs.open获取。

起始版本: 15

参数:

名称 描述
want Want指针。
key Want中字符串参数索引。
fd 文件描述符,可通过fs.open获取。

返回:

ABILITY_BASE_ERROR_CODE_NO_ERROR - 添加want文件描述符成功。

ABILITY_BASE_ERROR_CODE_PARAM_INVALID - want为空或非法入参。

OH_AbilityBase_GetWantFd

AbilityBase_ErrorCode OH_AbilityBase_GetWantFd(AbilityBase_Want* want, const char* key, int32_t* fd)

描述

获取Want文件描述符。

起始版本: 15

参数:

名称 描述
want Want指针。
key Want中字符串参数索引。
fd 文件描述符。

返回:

ABILITY_BASE_ERROR_CODE_NO_ERROR - 获取want文件描述符成功。

ABILITY_BASE_ERROR_CODE_PARAM_INVALID - want为空或非法入参。