如何在Flutter(Android)应用程序中使用C ++代码?

End*_*z R 6 c++ python android dart flutter

我正在Flutter(适用于Android)中开发一个应用程序,其核心基于仅用C ++和python开发的库。因此,我想知道如何在我的dart代码(C ++版本或Python版本)中使用此库。

Xav*_*ana 5

更新(2019-09-10)

今天已经发布了Dart 2.5(和Flutter 1.9)。Dart 2.5的新增功能之一是“用于直接从Dart调用C代码的dart:ffi外部函数接口”。我仍然没有检查它,但是它应该提供一个更直接的路径来与C(和C ++)代码接口。

另请参见公告视频(确认新方法和旧方法)。

旧答案(仍然有效)

我将看一下Platform Channels,这是一种将Flutter代码与平台本地代码进行通信的方式(例如,Android上的Java / Kotlin,iOS上的Objective C / Swift)。从那里,您可以使用常规NDK机制使用C ++库。

您可以看到Flutter平台通道的介绍和NDK入门

也许有更直接的途径,但这是我所知道的可行途径。

  • 感谢您及时更新答案:) (3认同)