中关村在线

软件

鸿蒙NDK错误9568347解决

从Android开发转向鸿蒙OS后,我开始尝试鸿蒙原生NDK开发,使用DevEco Studio(V5.05)创建默认项目。然而,生成的HAP包在鸿蒙模拟器中无法运行,提示错误代码9568347。查阅官方文档得知,问题可能源于设备支持的ABI类型与C++工程配置的ABI不一致。作为新手,我查阅了多种解决方案,经过反复调试和配置调整,最终成功解决了该问题,使应用能够在模拟器上正常启动并运行,为后续深入学习鸿蒙原生开发打下基础。

1、 通过仔细观察发现,该问题并非编译阶段的错误,而是在编译打包并部署HAP包至手机或模拟器时才出现,可依据运行时报错时右下角弹出的提示信息进行判断。

2、 由于缺乏真实设备进行测试,只能借助模拟器完成相关工作。而模拟器基于x86架构,与真实设备采用的arm64架构不同。推测问题根源在于,编译生成的C++原生代码.so文件为arm64版本,无法在x86架构的模拟器上正常运行。为解决该问题,需调整编译配置,生成适配x86平台的动态库文件,从而确保程序在模拟器中顺利执行。

3、 修改工程目录中的build-profile.json5文件,于buildOption配置项下新增所需内容。

4、 所示,通过CMake编译生成适用于x86架构的目标文件。

5、 修改保存后重新编译并安装,模拟器成功运行HAP包并显示正确画面,编译输出中也生成了x86_64架构的目标文件,问题已解决。

展开全文
人赞过该文
内容纠错

相关电商优惠

评论

更多评论
还没有人评论~ 快来抢沙发吧~

读过此文的还读过

点击加载更多

内容相关产品

说点什么吧~ 0

发评论,赚金豆

收藏 0 分享
首页查报价问答论坛下载手机笔记本游戏硬件数码影音家用电器办公打印 更多

更多频道

频道导航
辅助工具