鸿蒙Harmony实战:NAPI组件接口规范开发

简介

NAPI(Native API)组件是一套对外接口基于Node.js N-API规范开发的原生模块扩展开发框架。

图 1 NAPI组件架构图

  • NativeEngine

    JS引擎抽象层,统一JS引擎在NAPI层的接口行为。

  • ModuleManager

    管理模块,用于模块加载、模块信息缓存。

  • ScopeManager

    管理NativeValue的生命周期。

  • ReferenceManager

    管理NativeReference的生命周期。

目录

NAPI组件源代码在/foundation/arkui/napi下,目录结构如下图所示:

foundation/arkui/napi
   ├── interfaces
   │   └── kits
   │       └── napi           # NAPI头文件目录
   ├── module_manager         # 模块管理
   ├── native_engine          # NativeEngine抽象层
   │   └── impl
   │       └── ark            # 基于Ark的NativeEngine实现
   ├── scope_manager          # 作用域管理
   └── test                   # 测试目录

使用场景

NAPI适合封装IO、CPU密集型、OS底层等能力并对外暴露JS接口,通过NAPI可以实现JS与C/C++代码互相访问。我们可以通过NAPI接口构建例如网络通信、串口访问、多媒体解码、传感器数据收集等模块。

接口说明

接口实现详见:foundation/arkui/napi

表 1 NAPI接口说明

接口分类

描述

模块注册

向模块管理注册模块信息的接口。

异常&错误处理

向JS抛出异常。

对象生命周期管理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值