
Google发布最新Flutter 3.19版本,该版本拥有许多功能更新,包括框架与API改进,以及执行性能和渲染Impeller引擎的优化。Flutter开始提供Gemini Google AI Dart SDK,供开发者方便开发人工智能应用,并让开发者更精细地控制小工具(Widget)的动画,并且扩展支持Windows Arm64平台。
Flutter开发团队推出Gemini Google AI Dart SDK测试版,其背后采用Google最新的人工智能模型Gemini,使得开发者可以在Dart或Flutter应用程序中,集成生成式人工智能功能。目前开发者已经可以从pub.dev下载使用google_generative_ai组件以及相关资源,以遵循Dart语法特性的方式集成Gemini API,仅用单一程序代码库,就可开发Android、iOS、网页、macOS、Windows和Linux智能应用程序。
在框架改进上,Flutter强化了滚动行为的可配置性,允许开发者通过将MultiTouchDragStrategy.latestPointer设置为ScrollBehavior,设置与触摸点数无关的滚动行为,并且修复SingleChildScrollView与ReorderableList的崩溃问题和意外行为,提升了整体的稳定性和使用体验。此外,此版本更新加入新的AnimationStyle小工具,让用户可以覆盖小工具中的默认动画行为,赋予开发者更多灵活性与控制能力。
Flutter 3.19的无障碍功能也获得强化,添加SemanticsProperties无障碍识别符号,改进对语义节点的标示。这些节点代表了应用程序的结构与可操作元素,诸如按钮、连接和文本字段等,通过改进节点的标示,Flutter可以提供更丰富且准确的资讯给依赖辅助技术的用户。这些框架、小工具与无障碍功能的改进,进一步提升Flutter应用程序的开发效率和可用性。
Flutter用来取代Skia的渲染引擎Impeller,于Flutter 3.13时已在iOS上运行良好,而Flutter 3.16时,官方也鼓励开发者可以在支持跨平台绘图API Vulkan的Android设备上,开始尝试使用Impeller,而经过数个月的开发,现在Impeller对OpenGL后端的支持,已经提升到与Vulkan相同的程度,目前几乎所有Android设备上的Flutter应用程序,都可以使用Impeller正确渲染,只剩下诸如自定义着色器和外部贴图等功能尚未支持。
新版Flutter提供开发者更好的GPU关注能力,在采用Metal的iOS、macOS、模拟器设备,以及Vulkan的Android设备上,Flutter引擎现在可以于调试和分析构建的时间轴,回应每一个影格的GPU时间。不过目前在非Vulkan的Android设备,Flutter可能会错误回应GPU时间。

该版本值得一提的更新,还有Impeller在背景过滤器和模糊功能上的性能改进,由于Impeller之前会错误请求屏幕贴图读取功能,经过修正之后,在基准测试中包含多个背景滤镜的场景,性能改进可达20%至70%。
同时Flutter开发团队也改进背景过滤器,使其不再完全依赖模板缓冲区(Stencil Buffer)的数据,避免不必要的资源使用。在具有Vulkan后端的Impeller Pixel 7 Pro设备上,动画高端混合模式平均GPU影格时间从55毫秒下降到16毫秒,且90%的光栅化线程CPU时间,从约110毫秒降低至22毫秒
Flutter开发团队还持续扩展Flutter 3.19支持的平台,现在Flutter也开始支持Windows Arm64,此更新对在Windows Arm64平台,原生高性能执行Flutter应用程序是重要的一步。











