ffi Utf8.fromUtf8 在 iOS 上实现 opencv c++ flutter 应用程序时出错

问题描述

我正在使用 opencv 和 flutter 来构建应用程序。 ffi 包用于实现桥接,我从教程代码中得到了错误。我找不到任何解决方案。你能帮我吗?当 Utf8.fromutf8 和 Utf8.toUtf8

时出现错误
import 'dart:ffi' as ffi;
import 'dart:io';
import 'package:ffi/ffi.dart';

// C function signatures
typedef _version_func = ffi.Pointer<Utf8> Function();
typedef _process_image_func = ffi.Void Function(ffi.Pointer<Utf8>,ffi.Pointer<Utf8>);

// Dart function signatures
typedef _VersionFunc = ffi.Pointer<Utf8> Function();
typedef _ProcessImageFunc = void Function(ffi.Pointer<Utf8>,ffi.Pointer<Utf8>);

// Getting a library that holds needed symbols
ffi.DynamicLibrary _lib = Platform.isAndroid
    ? ffi.DynamicLibrary.open('libnative_opencv.so')
    : ffi.DynamicLibrary.process();

// Looking for the functions
final _VersionFunc _version = _lib
    .lookup<ffi.NativeFunction<_version_func>>('version')
    .asFunction();
final _ProcessImageFunc _processImage = _lib
    .lookup<ffi.NativeFunction<_process_image_func>>('process_image')
    .asFunction();

String opencvVersion() {
  return Utf8.fromUtf8(_version());
}

void processImage(ProcessImageArguments args) {
  _processImage(Utf8.toUtf8(args.inputPath),Utf8.toUtf8(args.outputPath));
}

错误

Error: Method not found: 'Utf8.fromUtf8'.

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)