HarmonyOS 鸿蒙Next 调用第三方库的方法报错

发布于 1周前 作者 sinazl 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 调用第三方库的方法报错 引用了第三方库的SO文件,头文件我都放在cpp/include下,在CMakeLists.txt里也包含进来了。构建工程时,会在测试脚本hello.cpp里new新对象FaceEngine的时候报错,报错信息如下:

头文件FaceEngine.h的构造函数如下:

第16行中的FD是与FaceEngine.h同一目录下的另一个头文件FaceDetector.h里定义的类。

工程里的目录结构:

CMakeLists.txt里对于头文件如何引入的语句:

set(NATIVERENDER_ROOT_PATH ${CMAKE_CURRENT_SOURCE_DIR})
include_directories(${NATIVERENDER_ROOT_PATH}
                    ${NATIVERENDER_ROOT_PATH}/include
                    ${NATIVERENDER_ROOT_PATH}/seetaface2/include)

更多关于HarmonyOS 鸿蒙Next 调用第三方库的方法报错的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

需要把鸿蒙IDE编译的业务代码的so和适配层逻辑代码的so放在libs目录下,也就是还需要一个libc++_shared.so

更多关于HarmonyOS 鸿蒙Next 调用第三方库的方法报错的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中调用第三方库时,如果出现报错,可能是由于以下原因:

  1. 库未正确导入:确保第三方库已正确导入到项目中,并且在oh-package.json5文件中正确声明了依赖。

  2. 库版本不兼容:检查第三方库的版本是否与鸿蒙Next的版本兼容。某些库可能需要特定版本的鸿蒙OS才能正常运行。

  3. 权限问题:某些第三方库可能需要特定的权限才能正常运行。检查config.json文件中是否已正确配置所需权限。

  4. API调用错误:确保调用第三方库的API时,参数传递正确,且调用的API在鸿蒙Next中可用。

  5. 库未适配鸿蒙OS:某些第三方库可能未针对鸿蒙OS进行适配,导致在鸿蒙Next中无法正常运行。

  6. 编译或打包问题:检查编译或打包过程中是否有错误信息,确保第三方库已正确编译并打包到应用中。

  7. 运行时环境问题:某些第三方库可能依赖于特定的运行时环境,确保鸿蒙Next的运行时环境满足库的要求。

  8. 日志分析:查看应用运行时的日志,分析报错信息,定位具体问题。

如果以上方法无法解决问题,建议查阅第三方库的官方文档或社区支持,获取更多帮助。

在HarmonyOS鸿蒙Next中调用第三方库时,如果出现报错,可以从以下几个方面排查:

  1. 依赖配置:确保在build.gradleoh-package.json中正确添加了第三方库的依赖项。

  2. 权限声明:某些库可能需要特定权限,检查config.json中是否声明了必要的权限。

  3. API兼容性:确认第三方库与当前HarmonyOS版本兼容,避免使用不支持的API。

  4. 库加载路径:确保第三方库的路径正确,避免加载失败。

  5. 日志分析:查看DevEco Studio中的日志输出,定位具体错误信息。

如果问题仍未解决,建议查阅官方文档或社区讨论。

回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!