目前尚不清楚 Dart VM 如何通过 FFI 加载 C/C++ 库。
final dylib = ffi.DynamicLibrary.open(libraryPath);
一些 C++ 库需要 Java 上下文才能在 Android 上运行。例如,Juce库通过以下方式初始化
public class Java
{
static
{
System.loadLibrary ("juce_jni");
}
public native static void initialiseJUCE (Context appContext);
}
但是,如果我想使用 FFI 从 Dart 调用 Juce,我无法从 Dart 加载它,因为我无法传递 java 上下文。如果我从 Java 加载库,那么我不能使用 Dart FFI。
有没有办法在 Java 和 Dart 中加载相同的库,在 Java 中启动它,然后将它与 Dart FFI 接口?