我正在寻找一个很好的方法,让一个C++库暴露于Dart/Flutter和SWIFT(显然是针对移动设备)。“SWIG已经存在很长一段时间了,但是找不到任何适合Dart/Flutter和SFWIT(目标是Android/IOS开发)等新语言的东西。我们已经在SWIG上绑定了Python和Java,如果能得到这两个就太好了。如果SWIG不能做到这一点,有没有其他类似的 Package 器更合适?
p4rjhz4m1#
没有直接将C库导出到Dart/Flutter的方法1.利用dart:ffi(与package:ffi和package:ffigen一起)与C wrapper of C++进行交互1.使用Fluttter插件将调用从MethodChannel桥接到C库
rseugnpd2#
替代(未测试!!!)使用emscripten aka C++-〉asm.js,然后使用EmscriptenModule将其加载到Flutter中。参考:https://pub.dev/documentation/web_ffi/latest/web_ffi_modules/EmscriptenModule-class.html也以同样的心情看https://github.com/rwl/emscripten。
C++
asm.js
EmscriptenModule
2条答案
按热度按时间p4rjhz4m1#
没有直接将C库导出到Dart/Flutter的方法
1.利用dart:ffi(与package:ffi和package:ffigen一起)与C wrapper of C++进行交互
1.使用Fluttter插件将调用从MethodChannel桥接到C库
rseugnpd2#
替代(未测试!!!)使用emscripten aka
C++
-〉asm.js
,然后使用EmscriptenModule
将其加载到Flutter中。参考:https://pub.dev/documentation/web_ffi/latest/web_ffi_modules/EmscriptenModule-class.html
也以同样的心情看https://github.com/rwl/emscripten。