加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

android – 在dart / flutter项目中包含C文件

发布时间:2020-12-14 14:52:34 所属栏目:百科 来源:网络整理
导读:在使用 Dart和 Flutter编写的跨平台(Android / iOS)项目中,我需要包含一个C文件并从该文件中调用C函数.例如,Dart中还没有许多最新的加密代码.此外,我需要使用返回值调用dart函数中的C代码,因此我不能使用异步方法,但需要同步调用这些函数. thread about incl
在使用 Dart和 Flutter编写的跨平台(Android / iOS)项目中,我需要包含一个C文件并从该文件中调用C函数.例如,Dart中还没有许多最新的加密代码.此外,我需要使用返回值调用dart函数中的C代码,因此我不能使用异步方法,但需要同步调用这些函数.

thread about including C/C++ code in Flutter似乎建议使用platform channels.使用这些,可以使用相应平台的本机代码.对于iOS,Objective C是C的超集,对于Android,需要一个额外的层,即NDK才能使用C代码.这不仅意味着需要两次编写代码(我可以使用),但platform channels tutorial明确表示平台调用是异步的(这对我来说是破坏的).

我发现2012年的另一个thread about native extensions in Dart显示了如何在dart中包含C代码,但这似乎只针对命令行应用程序.

如果没有办法从颤动中同步调用C函数,那就太奇怪了.如果您对如何实现这一点有所了解,那么您可以将概念证明考虑为这样的简单C函数:

int inc(int num) {
    return num + 1; 
}

提前致谢!

解决方法

目前,您无法同步执行此操作.抱歉打破了你的心.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读