OpenHarmony开发者论坛

标题: 模板生成和语言转换工具 [打印本页]

作者: 深开鸿_苟晶晶    时间: 7 天前
标题: 模板生成和语言转换工具
[md]napi-gen插件为OpenHarmony开发者提供模板生成(**sa**模板、**hdf**模板)和语言转换功能(依据**h**头文件转换生成**dts**接口文件 和  **native C++** 工程文件)。

## 功能:

* **h2hdf**:根据.h头文件自动生成hdf模板,包含:编译文件(.gn)、驱动配置文件(.hcs)、idl接口(.idl)、驱动程序和驱动服务框架。生成文件需要使用OpenHarmony源码环境编译,验证过的平台如下:| **平台**        | **版本**        |
  | --------------------- | --------------------- |
  | **OpenHarmony** | **4.1 release** |
* **h2sa**:根据.h头文件自动生成sa模板,包含:编译文件(.gn)、服务配置文件(.cfg)、服务进程和子系统能力配置文件(.xml:对应 OpenHarmony 3.2 release,.json:对应 OpenHarmony 4.1 / 5.0.0 release),IPC实现(proxy:在framework层使用;stub:在service层使用)以及子系统的服务代码和接口文件。生成文件需要使用OpenHarmony源码环境编译,验证过的平台如下:| **平台**        | **版本**                                    |
  | --------------------- | ------------------------------------------------- |
  | **OpenHarmony** | **3.2 release,4.1 release,5.0.0 release** |
* **h2dts**:根据.h文件生成OpenHarmony的JS-API接口文件,即将C/C++方法,枚举型,结构体,类转换成ArkTS语法的代码(.d.ts)。生成文件可以当作OpenHarmony应用导入的头文件使用;
* **h2dtscpp**:根据.h头文件生成OpenHarmony Native C++应用开发模板,包括JS-API接口文件(.d.ts),CPP文件和测试代码(.ets)。生成文件对应的是DevEco Studio选择NativeC++生成的工程模板中的源码文件内容:
  ![](https://gitee.com/openharmony/na ... es/h2dtscpp_gen.png)
  **验证过的平台如下:**| **平台**          | **版本**                                                            |
  | ----------------------- | ------------------------------------------------------------------------- |
  | **DecEco Studio** | **4.1 Release(Build Version: 4.1.0.400, built on April 9, 2024)** |

## 使用:

* **方式1**: 右键.h文件在弹出菜单里选择子菜单 **[OHOS\_Gen]** 内的功能:
  ![](https://gitee.com/openharmony/na ... /images/h2sa4-1.png)
* **方式2**: 通过在工具栏选择 **[帮助]** -> **[显示所有命令]**  或者 快捷命令 **[ctrl + shift + p]** 在弹出窗口里输入h2dts等命令使用功能
  ![](https://gitee.com/openharmony/na ... es/ctrl_shift_p.png)

## 验证:

**生成文件的详细用法请参考以下链接:**

* **h2sa:** [h2sa使用帮助文档](https://gitee.com/openharmony/na ... F%E6%88%90%E7%89%A9)
* **h2hdf:** [h2hdf使用帮助文档](https://gitee.com/openharmony/na ... #%E7%BC%96%E8%AF%91)
* **h2dtscpp:** [h2dtscpp使用帮助文档](https://gitee.com/openharmony/na ... e/INSTRUCTION_ZH.md)

## 问题:

要追踪现有的问题或报告一个新问题,请访问 [Gitee Issues](https://gitee.com/openharmony/napi_generator/issues) 页面
[/md]




欢迎光临 OpenHarmony开发者论坛 (https://forums.openharmony.cn/) Powered by Discuz! X3.5