什么不能Flutter做本机Android或iOS SDK可以吗?

Man*_*ijo 3 android ios dart flutter

最近我遇到了这个新的想象,因为他们称之为"用于制作高质量原生界面的SDK",称为Flutter.

然而,对我来说,仍有一些事情尚不清楚.有没有使用Flutter无法实现的东西可以通过原生Android或IOS SDK轻松完成?

他们说,如果我们需要原生功能,我们可以MethodChannel在Android和FlutterMethodChannelIOS 上轻松编写代码.

就目前看来,Flutter在快速且非常简单的应用程序原型设计方面很有前途,但您是否会考虑将其用于可能需要大量本机SDK功能的应用程序,例如后台服务,传感器数据等......

Edm*_*man 9

我认为作为一个框架而颤抖的方式有两个主要部分.首先,它包含一个具有高级原语的渲染引擎,用于实现现代移动应用程序.这部分包括手势检测,动画,物理以及这些幻灯片中的所有其他内容.这是Flutter提供的核心.

其次,Flutter是一系列原生平台插件.插件将工作委托给平台,平台又实现特定于平台的功能,并通过统一的,独立于平台的界面报告回来.这包括GPS,相机,媒体播放等内容.插件利用底层平台增强核心功能,Flutter不能或不想重新实现.

从这个意义上说,只要有插件可以显示所需的功能,Flutter的功能可能不会低于它运行的平台.我们还没有,但是现有的插件已经有很多了,而且生态系统正在增长.例如,就在上周,社区在官方相机包中增加了对视频录制的支持.

也就是说,有些情况下Flutter的优势开始减弱.我能想到的一个例子就是Flutter的渲染引擎Skia是一个2D渲染引擎,所以如果你正在尝试做3D图形这样的事情,你可能会发现自己通过编写比实际的Flutter更多的插件来解决这个问题.2D渲染是大多数应用程序所需要的,但它使得框架在游戏等特殊用例中不太适合.

此外,由于Flutter和Dart早期存在,你肯定会看到局限性.例如,Flutter目前只为手臂目标输出Android APK.但是,没有任何内在的原因会发生这种情况,这样的问题很可能会在一定时间内得到解决.