Flutter开发HarmonyOS鸿蒙Next应用的时候是否支持ffi
Flutter开发HarmonyOS鸿蒙Next应用的时候是否支持ffi
是否支持store_dart_post_cobject等直接加载鸿蒙so库并回调给dart的操作?
支持的
有无demo可以参考?
我想请教的是有无dart调用cpp再调用native的代码可以参考,类似于android的 JNIEXPORT jint JNI_OnLoad(JavaVM *vm, void *reserved) 我使用flutter create -t flutter create -t plugin_ffi --platforms ohos <name>得到的demo中只看见dart调用c的ffi样例,没有看见jni的接口,aki能否做到这个功能?
可以的,flutter create 创建的 demo 在调到 c 端后,你可以继续:
a. 调纯 c/c++ 的代码 b. 调纯 c/c++ 代码打包的动态库,即 so(注意不能调 android 的 so,会 load 失败) c. 调基于鸿蒙平台打包的 so d. 调 c/c++ 形式的平台 API,举个最简单的例子,打鸿蒙 log
#include <hilog/log.h>
OH_LOG_WARN(...);
N-API接口可以实现ArkTS/TS/JS与C/C++之间的交互,可以参考文档 https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V2/napi-guidelines-0000001493903956-V2
Flutter开发HarmonyOS鸿蒙Next应用时支持FFI(Foreign Function Interface)。
FFI插件在Flutter开发中提供了调用C/C++代码的能力,这对于需要利用底层系统资源或已有C/C++库的应用来说非常有用。在HarmonyOS鸿蒙Next平台上,Flutter同样支持通过FFI插件来调用C/C++代码。
为了使用FFI插件,开发者需要在Flutter项目中正确配置依赖,并确保FFI插件的代码已经针对HarmonyOS进行了适配。由于HarmonyOS与Android和iOS在底层实现上存在差异,因此直接使用未经适配的FFI插件可能会导致问题。不过,随着HarmonyOS生态的不断发展,越来越多的FFI插件正在进行适配,以支持HarmonyOS平台。
如果在使用FFI插件时遇到问题,建议检查插件的适配情况,并参考HarmonyOS和Flutter的官方文档进行配置和调试。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html 。