flutter的使用,调用动态链接库。

flutter的使用,调用动态链接库。,第1张

直接构建的项目(编辑器使用的VS code),需要安装c++的编译器(jiafa.dll,main1.dart请忽略)

目录结构

先创建文件夹assets,并创建main.c文件

main.c的文件内容

int add(int a, int b) {

return a + b;

}

在vs code的终端进入assets文件夹,输入gcc main.c -shared -o main.dll 将main.c编译成dll文件

在main.dart中。

引入

import 'dart:ffi' as ffi

然后建立参数的映射

typedef Cpara = ffi.Int32 Function(ffi.Int32, ffi.Int32);

typedef DartPara = int Function(int, int);

在方法中调用dll文件

ffi.DynamicLibrary jiafa = ffi.DynamicLibrary.open('./assets/main.dll');

    var add = jiafa.lookupFunction("add");

    print(add(1, 2));

打印效果

最后是main.dart文件的全部内容

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1498974.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-25
下一篇 2022-06-25

发表评论

登录后才能评论

评论列表(0条)

保存