Могу ли я использовать интерфейсы JNI в своем коде C ++ при использовании dart: ffi в флаттере? - PullRequest
0 голосов
/ 13 января 2020

Теперь я загружаю свой код C ++:

final DynamicLibrary nativeAddLib =
  Platform.isAndroid
    ? DynamicLibrary.open("libnative_add.so")
    : DynamicLibrary.process();

, но JNI_OnLoad в моем. cpp файле не выполняется:

JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) {
  LOGI("JNI_OnLoad!");
}

1 Ответ

0 голосов
/ 14 января 2020

Как сказал @Botje, DynamicLibrary.open не дает указание JVM загружать библиотеку.

Наконец, я добавляю дополнительную библиотеку .so для инкапсуляции взаимодействия с JNI и загружаю это через System.loadLibrary в java.

...