框架与类库:Flutter
Flutter混合栈路由实践与优化
Flutter与原生混合开发下路由难题小解
飞猪Flutter技术演进及业务改造的实践与思考总结
本文结合飞猪近半年来在 Flutter 技术实践中的突破和探索,重点介绍跨端标准容器建设、组件库的沉淀、性能优化的经验,以及面对存量业务做 Flutter 改造的新思路。
Flutter Web在美团外卖的实践
美团外卖前端技术团队基于Flutter Web探索跨端解决方案,实现了“Write Once,Run AnyWhere”,本文系实践经验总结。
一套Flutter混排瀑布流解决方案
流式布局,这是一种当前无论是前端,还是Native都比较流行的一种页面布局。特别是对于商品这样的Feeds流,无论是淘宝,京东,美团,还是闲鱼。都基本上以多列瀑布流进行呈现,容器列数固定,然后每个卡片高度不一,形成参差不齐的多栏布局。
对于Native来说,无论是iOS还是Android,CollectionView和RecyclerView都能满足我们的绝大部分场景了。不过目前闲鱼很多业务场景都是在Flutter上进行实现的,当时Flutter官方只提供了ListView和GridView的实现,没有对瀑布流进行支持。
目前社区中有两个开源的解决方案,分别是WaterFallFlow和FlutterStaggeredGridView。但是在闲鱼的场景中都有一些无法满足的痛点。前者无法支持RecyclerView中StaggeredGridLayoutManager中setFullSpan这样的横跨全屏的横条卡片混排能力能力,后者在不提前预设置卡片高度的情况下有比较严重的性能问题,以及在多Sliver的场景下会有滚动错误的功能性问题。而在目前闲鱼的业务中,无论是搜索结果还是首页的同城页面,都会有混排瀑布流的需求。
Flutter Worker —— 闲鱼这样实现“逻辑跨平台”
依托Flutter Engine,用Dart实现的逻辑跨平台工具~
MOO 音乐中的Flutter 模糊方案分析
本文记录了MOO音乐团队在Flutter上模糊方案的一些思考。
Q音直播Flutter包裁剪方案(iOS)
Flutter作为一款优秀的跨平台方案,Q音团队一致保持高度关注,也一直在努力促进Flutter的应用框架建设。本文分享内容是Q音是如何解决Flutter包体积问题,欢迎大家相互交流相关技术。
Flutter的Widget之间的通信方式及状态管理
本文将从父Widget和子Widget之间的通信、跨多个Widget/页面之间的通信、状态管理这个三个方面讲解相关的知识及原理。
Flutter在流式场景下的架构设计与应用
Flutter在流式场景下的一套页面搭建架构方案,减少发版依赖,提升效能!
贝壳Flutter动态化原理与实践
本文主要介绍贝壳Flutter动态化方向的发展历程以及整体架构,同时介绍贝壳Flutter动态化技术方案和未来规划。
让 Flutter 在鸿蒙系统上跑起来
如何在保证开发迭代效率的前提下,以相对低的成本将移动应用快速移植到鸿蒙平台呢?
Flutter 高性能、多功能的全场景滚动容器,一定要看!
目前闲鱼的主要业务场景都已经使用 Flutter 来实现,其中流式布局是最常见的页面布局场景(如搜索、商品详情等)。随着业务的快速迭代和业务复杂度的不断提升,对流式场景的能力和性能要求也越来越高;
- 在能力方面,最常见的如卡片曝光、滚动锚点、瀑布流布局等能力,随着业务和需求的不断变化,Flutter原生和一些开源解决方案,渐渐无法满足我们需求。
- 性能方面,流式场景下的列表滚动流畅度问题随着业务复杂度的增加而逐渐恶化,亟需解决以提升用户的使用体验。
针对以上在业务中面临的问题,我们设计了一套流式场景下通用的页面布局解决方案,我们将其命名为 PowerScrollView。
带你重新“玩转”Flutter
Flutter作为一项已经逐渐进入规模化实践的技术,它的价值已经初步获得认可,后续应该有不错的生命力。作为较早期的Flutter实践者,我一直在思考Flutter的技术价值以及如何释放这些价值,本篇尝试从一个新的视角去结构化的梳理Flutter的技术价值并做对应的应用分析。
Flutter图片内存优化实践
Flutter 在处理图片时产生的OOM问题,困扰了很多使用Flutter技术的开发者。本文将介绍贝壳Flutter技术团队的一些实践和探索,包括从AOP到外接纹理方案等等。
深入理解Flutter的图形图像绘制原理——图形库skia剖析
深入分析skia的图形、字体、图片的渲染原理,如何挖掘硬件特性,为UI性能优化提供思路。
部分APP无法代理抓包的原因及解决方法(flutter 抓包)
HTTP应用层的抓包已经成为日常工作测试与调试中的重要一环,最近接触新项目突然之间发现之前的抓包手段都不好使了,顿时模块与模块之间的前端与服务之间的交互都变成了不可见,整个人都好像被蒙住了眼睛。