Flutter与本机代码交互有哪些选项

时间:2019-05-26 10:56:35

标签: android react-native flutter dart native

我有一个与Flutter开发移动应用程序有关的问题,该应用程序还需要与本机代码进行交互。 简而言之,我们有一个最初仅在本机环境(Android的Kotlin,iOS的Swift)中构建的代码,并且想要在新的应用程序环境中使用某些代码功能。一个特定的示例将使用AWS功能(例如Cognito等)。

我的问题是,方法是什么,即处理调用本机函数以及在它们与创建的Flutter(Dart)函数之间传输数据的最佳方法是什么? 我知道platform channels。是否有其他方法或必须始终遵循此协议? 从本质上讲,是否有可能在Dart和本机函数之间发送不同的数据类型,例如一个对象?

我的团队目前正在考虑过渡到Native React或Flutter,但是到目前为止,就本机支持而言,它们之间的处理似乎并没有太大差异,因此,进行任何其他澄清将大有帮助。 / p>

1 个答案:

答案 0 :(得分:0)

是的,您可以将本机应用程序与flutter集成在一起。 Here is an article explaining how to do that.另外,您可以在两个平台之间发送自定义对象,但是显然需要确保匹配映射。我确定您可以构建某种code generation tool来为您完成工作(类似于json_serializable的工作方式)。我为我的flutter项目创建了一个插件来发送对象,这根本不是问题。如果您要从平台过渡,那么这里将存在上述代码生成工具,因为将会有大量对象。祝你好运!