HarmonyOS 鸿蒙Next 导入har(har包含so库),运行报错

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

HarmonyOS 鸿蒙Next 导入har(har包含so库),运行报错

cke_259.png

导入har包后,运行报错

10-07 14:47:09.930 258 493 I C02d10/HiView-LogStoreEx: DoDeleteLogFiles: Remove <private> Files.

10-07 14:47:09.930 258 493 I C02d10/FaultLogManager: SaveFaultLogToFile: create log jscrash-com.example.myapplication-20010038-20231007144709

10-07 14:47:09.930 258 493 I C02d10/Faultlogger: AddFaultLogIfNeed:

10-07 14:47:09.930 258 493 I C02d10/Faultlogger: Save Faultlog of Process:2262

10-07 14:47:09.930 258 493 I C02d10/Faultlogger: ModuleName:com.example.myapplication

10-07 14:47:09.930 258 493 I C02d10/Faultlogger: Reason:

10-07 14:47:09.930 258 493 I C02d10/Faultlogger: Summary:Lifetime: 0.000000s

10-07 14:47:09.930 258 493 I C02d10/Faultlogger: Js-Engine: ark

10-07 14:47:09.930 258 493 I C02d10/Faultlogger: page: pages/Index.js

10-07 14:47:09.930 258 493 I C02d10/Faultlogger: Error message: Cannot read property ***SDkVersion of undefined

10-07 14:47:09.930 258 493 I C02d10/Faultlogger: SourceCode:

10-07 14:47:09.930 258 493 I C02d10/Faultlogger: return ***Napi.***SDkVersion(v);

10-07 14:47:09.930 258 493 I C02d10/Faultlogger: ^

10-07 14:47:09.930 258 493 I C02d10/Faultlogger: Stacktrace:

10-07 14:47:09.930 258 493 I C02d10/Faultlogger: at ***SDkVersion (entry/oh_modules/.ohpm/@ohos+lib***sdk.har@file+src+main+libs+lib***sdk.har/oh_modules/@ohos/lib***sdk.har/src/main/ets/components/***Sdk.ets:32:12)

10-07 14:47:09.930 258 493 I C02d10/Faultlogger: at anonymous (entry/src/main/ets/pages/Index.ets:28:13)

10-07 14:47:09.931 258 493 I C02d10/Faultlogger: OnEvent: Seq match success, info.logPath /data/log/faultlog/faultlogger/jscrash-com.example.myapplication-20010038-20231007144709

10-07 14:47:09.948 258 493 I C02d10/ExtractRule: IsMatchPath: sourceFile is /data/log/faultlog/faultlogger/jscrash-com.example.myapplication-20010038-20231007144709, name is /data/log/faultlog/faultlogger/, pattern is jscrash-.*-\d±\d+.


更多关于HarmonyOS 鸿蒙Next 导入har(har包含so库),运行报错的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

依赖配置改为下图方式解决问题:

更多关于HarmonyOS 鸿蒙Next 导入har(har包含so库),运行报错的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


感觉这个官方应该写到文档了。我也是用你给出的方法解决的问题,

so库的api 链接到不了,要怎么配置,求解

在HarmonyOS鸿蒙Next中导入包含so库的har文件并运行报错,可能是由于以下原因:

  • so库路径问题:鸿蒙系统对so库的路径有严格的要求,确保so库放置在正确的目录下,通常是libs/目录。

  • 架构不匹配:so库的架构(如arm64-v8a、armeabi-v7a)与设备的CPU架构不匹配,检查so库的架构是否与设备兼容。

  • 依赖缺失:so库可能依赖其他库或资源文件,确保所有依赖项都已正确导入并放置在指定位置。

  • 权限问题:某些so库需要特定的系统权限,确保在config.json中正确配置了所需的权限。

  • 版本兼容性:so库的版本与鸿蒙系统的版本可能存在兼容性问题,检查so库是否支持当前鸿蒙版本。

  • 编译选项:在编译har文件时,确保编译选项正确,特别是与so库相关的编译选项。

  • 日志分析:查看设备日志(logcat)以获取更详细的错误信息,有助于定位具体问题。

  • 签名问题:如果so库需要签名,确保签名正确且未被篡改。

  • API兼容性:so库可能使用了鸿蒙系统不支持的API,检查so库的API调用是否符合鸿蒙系统的规范。

  • 资源冲突:确保so库中的资源文件与项目中的资源文件没有冲突。

通过以上步骤逐一排查,可以有效解决鸿蒙Next中导入har文件并运行报错的问题。

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