native_interface.h
概述
提供NativeModule接口的统一入口函数。
引用文件: <arkui/native_interface.h>
库: libace_ndk.z.so
系统能力: SystemCapability.ArkUI.ArkUI.Full
起始版本: 12
相关模块: ArkUI_NativeModule
汇总
枚举
| 名称 | typedef关键字 | 描述 |
|---|---|---|
| ArkUI_NativeAPIVariantKind | ArkUI_NativeAPIVariantKind | 定义Native接口集合类型。 |
函数
| 名称 | 描述 |
|---|---|
| void* OH_ArkUI_QueryModuleInterfaceByName(ArkUI_NativeAPIVariantKind type, const char* structName) | 需调用该函数初始化C-API环境,并获取指定类型的Native模块接口集合。 |
宏定义
| 名称 | 描述 |
|---|---|
| OH_ArkUI_GetModuleInterface(nativeAPIVariantKind, structType, structPtr) | 基于结构体类型获取对应结构体指针的宏函数。 |
枚举类型说明
ArkUI_NativeAPIVariantKind
enum ArkUI_NativeAPIVariantKind
描述:
定义Native接口集合类型。
起始版本: 12
| 枚举项 | 描述 |
|---|---|
| ARKUI_NATIVE_NODE | UI组件相关接口类型,详见native_node.h中的结构体类型定义。 |
| ARKUI_NATIVE_DIALOG | 弹窗相关接口类型,详见native_dialog.h中的结构体类型定义。 |
| ARKUI_NATIVE_GESTURE | 手势相关接口类型,详见native_gesture.h中的结构体类型定义。 |
| ARKUI_NATIVE_ANIMATE | 动画相关接口类型。详见native_animate.h中的结构体类型定义。 |
| ARKUI_MULTI_THREAD_NATIVE_NODE | 多线程UI组件相关接口类型,详见native_node.h中的结构体类型定义。 起始版本: 22 |
函数说明
OH_ArkUI_QueryModuleInterfaceByName()
void* OH_ArkUI_QueryModuleInterfaceByName(ArkUI_NativeAPIVariantKind type, const char* structName)
描述:
需调用该函数初始化C-API环境,并获取指定类型的Native模块接口集合。
起始版本: 12
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_NativeAPIVariantKind type | ArkUI提供的native接口集合大类,例如UI组件接口类:ARKUI_NATIVE_NODE, 手势类:ARKUI_NATIVE_GESTURE。 |
| const char* structName | native接口结构体的名称,通过查询对应头文件内结构体定义,例如位于native_node.h中的"ArkUI_NativeNodeAPI_1"。 |
返回:
| 类型 | 说明 |
|---|---|
| void* | 返回native接口抽象指针,在转化为具体类型后进行使用。 |
OH_ArkUI_GetModuleInterface()
OH_ArkUI_GetModuleInterface(nativeAPIVariantKind, structType, structPtr) \
do { \
void* anyNativeAPI = OH_ArkUI_QueryModuleInterfaceByName(nativeAPIVariantKind, #structType); \
if (anyNativeAPI) { \
structPtr = (structType*)(anyNativeAPI); \
} \
} while (0)
描述:
基于结构体类型获取对应结构体指针的宏函数。此宏函数接收ArkUI_NativeAPIVariantKind类型枚举参数nativeAPIVariantKind、const char*类型参数structType、structType*类型参数structPtr,调用OH_ArkUI_QueryModuleInterfaceByName获取native接口抽象指针,转换为structType*类型后赋值给structPtr。
起始版本: 12