31 条回复  ·  3301 次点击
hronro 小成 昨天 17:51
安卓上不清楚,iOS 上 Flutter 的应用明显不如原生的应用流畅。如果同一套 Flutter 的代码在安卓上比安卓原生的流畅,那真有点 iOS 的下限吊打安卓的上限的感觉了。
wvitas 初学 昨天 17:52
@mizuki9 有相关的无障碍的库,问题不大
nethcx 初学 昨天 17:55
flutter 总感觉有种不跟手的感觉
liyafe1997 小成 昨天 18:00
@debuggerx 是这样的,就跟你在 Windows 下用 GDI 甚至 WinForm/通用控件手搓各种特效,性能肯定比不上极端一点比如直接上 DirectX ,上 Unity3D 里面显示 3D 动画。但是这种会有一个 runtime 开销,以及最重要的冷启动开销。 别说 Unity3D ,你就算用 WPF 拖几个简单的控件,冷启动时间以及资源占用肯定比 WinForm/MFC 这种直接用 Win 通用控件差很多。看看 Win11 的一堆系统组件用 XAML island 就是这个鸟样子,为什么 Win11 总有一种拖泥带水粘滞感。 说白了就是,确实动画/性能更好,但是可能冷启动 App 时加载时间更长,占内存更多
Loku 小成 昨天 18:01
https://flutter.dev/showcase/xiaomi
w568w 小成 昨天 18:02
@tanszhe > Flutter 的性能肯定是小于原生性能的 为啥啊,Android 原生的图形渲染框架是 Skia [1],Flutter 使用的图形渲染框架也是 Skia [2]。Android 原生的运行时是 ART ,Flutter 是 Dart Runtime [3]。 难道 Android 通过 Java -> C++ 调用的 Skia 比 Flutter 通过 Dart -> C++ 调用的 Skia 更高级吗 🤔 [1] https://cs.android.com/android/platform/superproject/main/+/main:frameworks/base/libs/hwui/pipeline/skia/SkiaPipeline.cpp [2] https://docs.flutter.dev/resources/architectural-overview#flutters-rendering-model [3] https://dart.dev/overview#native-platform
ybz 初学 昨天 18:06
@VinsonGuo #6 这个不是问题,flutter 调用原生已经在全面往 ffi 转了,前期的线程合并工作已经做完了,现在 flutter 运行在主线程,可以同步调用原生 api 了。
debuggerx 小成 昨天 18:12
@liyafe1997 冷启动时长这点我赞成你的说法,但实际来说没 unity 那种那么夸张,不负责任大致估计的话,如果原生冷启动只要十几几十毫秒,flutter 则可能需要 200ms 甚至更多。 但有意思的点是,现在的 os 都会为了视觉和体感的流畅加入启动动画,这个时间在一定程度上缩小了差距,另外系统应用一般功能单一,不会在启动时加入全屏启动页并初始化一大堆东西,所以相比于其他商业应用,启动性能也是会好很多的。
VinsonGuo 楼主 小成 昨天 18:13
@ybz 我说的原生不是 native c/cpp, 而是 android API 。试想一下开发一个 settings app ,里面各种蓝牙、wifi 、display 选项都要调用到 android api 来获取,需要把相关的 android api 包一层,想想维护起来都痛苦
Gilfoyle26 小成 昨天 18:16
这帮员工为了 KPI 真的是脸都不要了,就欺负雷子好久不搞技术了,在那里瞎玩。迟早要给雷子这点江山玩没了。https://i.imgur.com/VUWFktU.png
返回顶部