HarmonyOS 鸿蒙Next 关于OH_NativeImage的一些疑问
HarmonyOS 鸿蒙Next 关于OH_NativeImage的一些疑问
目前代码使用OH_NativeImage来获取BuilderNode画面。
OH_NativeImage设置了OnFrameAbilableListenter, 每次回调就给一个“整型变量”+1。
使用VSync来控制XComponent渲染,
每次Vsync回调就会判断整型变量是否大于1然后使用UpdateSurfaceImage更新纹理。
目前遇到的问题时,运动控制很慢的话,可以很流畅的渲染画面,类似OnFrameAbilableListener回调一次,Xcomponent渲染一次的节奏,他就很流畅。
一但遇到BuilderNode的画面更新速度打破以上节奏,控制台就可以看到一大段报错,然后会画面卡顿(不是掉帧,是直接ui线程都卡住),但是UpdateSurfaceImage返回值一直是0,意思是没有错误。
基本上就是onframe更新了两帧,我在去update,他就会卡住在update然后报以上错误
更多关于HarmonyOS 鸿蒙Next 关于OH_NativeImage的一些疑问的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
更多关于HarmonyOS 鸿蒙Next 关于OH_NativeImage的一些疑问的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
晚点
找HarmonyOS工作还需要会Flutter技术的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:https://www.bilibili.com/video/BV1S4411E7LY/?p=17
你好,demo发在3楼了
针对您提出的关于HarmonyOS 鸿蒙Next中OH_NativeImage的疑问,以下是一些专业解答:
OH_NativeImage是HarmonyOS NEXT中提供Surface关联OpenGL外部纹理的模块,开发者可以通过其接口接收和使用Buffer,并将Buffer关联输出到OpenGL外部纹理。
在使用OH_NativeImage时,如果遇到“undefined symbol”错误,通常是因为库文件缺失或未正确链接。请确保项目中已包含定义该符号的库文件(如libnative_image.so),并检查构建脚本或IDE中的库路径和链接器选项。
此外,OH_NativeImage的使用需要配合NativeWindow、NativeBuffer、EGL、GLES3等模块。在开发过程中,如果遇到egl环境问题导致的错误码(如50001000),建议检查EGL环境的配置,并确保引入了正确的头文件。例如,API 11中引入了egl_render_context.h和shader_program.h,升级API版本并包含这些头文件可能有助于解决问题。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html 。