HarmonyOS鸿蒙Next中如何创建一个native的库工程,编译出来包让另外一个happ工程引用
HarmonyOS鸿蒙Next中如何创建一个native的库工程,编译出来包让另外一个happ工程引用 如何创建一个native的库工程,编译出来包让另外一个happ工程引用。如同android编译了一个包含native的jar包,然后另外一个app工程引用这个jar包就可以了。
关于“创建一个native的库工程,编译出来包让另外一个happ工程引用”,您可以有两个选择:
静态共享库(.har),动态共享库(.hsp)
这两种包的区别可参考: https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/application-package-overview-V5
构建静态共享库(.har)可参考: https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/har-package-V5
构建动态共享库(.hsp)可参考: https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/in-app-hsp-V5
更多关于HarmonyOS鸿蒙Next中如何创建一个native的库工程,编译出来包让另外一个happ工程引用的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next中创建一个native库工程并编译出供另一个HAP工程引用的包,可以按照以下步骤进行:
-
创建Native库工程:
- 打开DevEco Studio,选择“File” -> “New” -> “New Module”。
- 在“New Module”对话框中,选择“Native C++”模板,点击“Next”。
- 输入模块名称、包名等信息,点击“Finish”完成创建。
-
编写Native代码:
- 在生成的native库工程中,找到
cpp目录,编写所需的C++代码。 - 在
CMakeLists.txt中配置编译选项,确保生成的库文件符合需求。
- 在生成的native库工程中,找到
-
编译Native库:
- 在DevEco Studio的终端中,使用
./gradlew build命令编译native库工程。 - 编译完成后,生成的库文件(如
.so文件)会位于build/outputs目录下。
- 在DevEco Studio的终端中,使用
-
引用Native库的HAP工程:
- 在需要引用native库的HAP工程中,打开
build.gradle文件。 - 在
dependencies块中添加对native库工程的依赖,例如:implementation project(':native-library-module') - 确保
settings.gradle文件中包含native库工程的路径,例如:include ':native-library-module'
- 在需要引用native库的HAP工程中,打开
-
使用Native库:
- 在HAP工程的Java或Kotlin代码中,通过
System.loadLibrary加载native库,并调用相应的native方法。
- 在HAP工程的Java或Kotlin代码中,通过
通过以上步骤,你可以在HarmonyOS鸿蒙Next中创建并编译出一个native库工程,并在另一个HAP工程中引用该库。
在HarmonyOS鸿蒙Next中创建Native库工程并让另一个HAP工程引用,可以按照以下步骤操作:
-
创建Native库工程:
- 打开DevEco Studio,选择“File” -> “New” -> “New Module”。
- 选择“Native C++”模板,填写工程名称和路径,点击“Finish”。
-
配置Native库工程:
- 在
CMakeLists.txt中定义库的源文件和目标库名称。 - 在
build-profile.json5中配置编译选项和目标平台。
- 在
-
编译Native库:
- 在DevEco Studio中点击“Build” -> “Make Module”编译库工程,生成
.so文件。
- 在DevEco Studio中点击“Build” -> “Make Module”编译库工程,生成
-
在HAP工程中引用Native库:
- 将生成的
.so文件放入HAP工程的libs目录。 - 在
build-profile.json5中添加依赖项,指定库路径。 - 在代码中使用
System.loadLibrary加载库并调用Native方法。
- 将生成的
通过以上步骤,HAP工程即可成功引用Native库。

