Flutter
高性能高流畅度一直是Flutter团队宣传的一大亮点,也是当初闲鱼选择Flutter的重要因素之一,但是随着复杂业务的应用落地,通过Flutter页面和原生页面滑动流畅度对比,我们开始产生怀疑—— 因为部分Flutter页面流畅度明显低于Native,是Flutter的宣传言过其实?还是我们开发人员使用姿势有问题?今天我们就来具体分析下。 Flutter渲染原理简介优化之前我们先来介绍下Flutter的渲染原理,通过这部分基础了解渲染流程以及主要耗时…
去年,2019 年无疑是 Flutter 技术如火如荼发展的一年。 每一个移动开发者都在为 Flutter 带来的“快速开发、富有表现力和灵活的 UI、原生性能”的特色和理念而痴狂,从超级 App 到独立应用,从纯 Flutter 到混合栈,开发者们在不同的场景下乐此不疲的探索和应用着 Flutter 技术,也在面临着各种各样不同的挑战。 阿里巴巴集团内也有越来越多的业务和团队开始尝试 Flutter 技术栈,从闲鱼的一支独秀引领潮流,到如今淘宝特价版、…
Flutter在携程复杂业务的高性能之旅
一、背景 携程火车票在十余个核心业务的列表页及主流程大规模进行了Flutter实践。经过一年多的开发、维护 ,总结了一套行之有效的性能优化方案。本文主要介绍结合性能分析工具,来识别、区分、定位一些性能问题,并且能够找到具体的方法和代码位置,帮助更快地解决问题。此外,也会分享我们做的一些性能优化案例和体验上的优化,希望能够给你带来一些启发。 二、渲染优化 Flutter 渲染性能问题主要可以分为 GPU 线程问题和 UI 线…
原因之一是技术发展更加细化了,需要去更多方向上发展,做更好的组合,来榨取更多价值 理论上说,java这种静态类型一开始就可以很适合AOT模式的,(GC之类的问题其实并不必须VM,也可以VEE,像Go这样),只要不嫌麻烦在各种平台上搞对应编译器(或者通过其他代码中转,如java->C),但因为某些原因并没有直接做成这样,当年微软的VJ似乎就这么干,然后被起诉了。。。 直接解释执行性能是个问题,如果不AOT,那么就JIT,然后大家…
其实Kotlin也不是什么热门语言,学习性价比很低,除了Android开发在用,其他地方没人用。而且Android开发中依然可以选择Java,现在都支持到Java11了。总体来说,Kotlin和dart半斤八两,目前趋势反而是dart热度更高。 更新一下2023年热度 [图片] 要弄明白这个问题,首先你必须对flutter有深度了解,不然解释再多都是隔靴搔痒,抓不到点子上。 这里只能简单说一说 Dart语言实际上早在2011年就出来了,到现在已过十年了,根本不算很新。早…
Flutter 长截屏适配 Miui 系统,一点都不难
作者:闲鱼技术——云从 背景现有 App 大部分业务场景都是以长列表呈现,为更好满足用户内容分享的诉求,Android 各大厂商都在系统层面提供十分便捷的长截屏能力。然而我们发现 Flutter 长列表页面在部分 Android 手机上无法截长屏,Flutter 官方和社区也没有提供框架层面的长截屏能力。 闲鱼作为 Flutter 在国内业务落地的代表作,大部分页面都以 Flutter 承接。为了闲鱼用户也能享受厂商系统的长截屏能力,更好的满足商品、社…
写给前端工程师的 Flutter 详细教程
作者:hicc, 腾讯 CSIG 工程师 最爱折腾的就是前端工程师了,从jQuery折腾到AngularJs,再折腾到Vue、React。 最爱跨屏的也是前端工程师,从phonegap,折腾到React Native,这不又折腾到了Flutter。 图啥? 低成本地为用户带来更优秀的用户体验。目前来说 Flutter 可能是其中最优秀的一种方案了。Flutter是什么? Flutter is Google’s UI toolkit for building beautiful, natively compiled applications for mobile , web , and …
再更新一点,中国程序员什么时候变成西方政客了?一张嘴没完没了哔哔哔,除了抹黑扣帽子,还能有点新花样吗?有本事把你代码亮出来,行不行,能不能达到原生性能,大家自由运行,自由判断,在评论区、私信对我人身攻击,只能说明你们是躲在下水道老鼠,彻头彻底卢瑟。嘴上没输过,现实没赢过!真有能耐,亮出代码,大家过几招,看清谁在裸泳 2022年了,这个问题下还挂着一些可笑的答案,还是再说明一下吧,以免误人子弟。 首先,…
我在过去做过若干年的动态化技术的开发,也写过类似于 RN 的应用框架(但要早于 RN)。简单从几个角度对比下 Flutter & RN/Weex,顺便聊聊动态化技术: 当前几大动态化技术对比性能和体验 Flutter 由于渲染的基础(gdi)是自己实现的,所以实现跨平台、性能优化、摆脱平台约束方面的裕度更大。从实际体验来看, Flutter 的性能比 RN 要高不少。 我尝试总结下性能差异的原因以及 Flutter 架构上为“未来”留下的裕度: 运行时语言…
我开始是做Android开发的,写了两年,后来公司节约成本,选型跨端产品。那时候17年,还没听说过Flutter,就在weex和rn中选了rn。开发到现在,公司有项目是用Flutter搞的,从去年的时候开始接触。怎么说呢,rn的问题在于,还是UI的一致性,比如ios显示窄了,Android显示正常之类的,需要封装组件单独判断。性能问题的话也还好,现在都0.70.7了,新架构也上了。组件少的可怜,需要你认真去找了。目前几个好用的组件可以分享一下,…
跨平台需求在就不会凉,只是火的有限。 阿里这种狂吹flutter的倒是很少见,很多人嘲笑咸鱼,其实不怪flutter,阿里用native的时候也卡出翔,所以把我支付习惯生生逼成了微信支付,也难为阿里搞app的了,特别是活动期间,什么天猫支付宝,卡的程度要在上一层,搞了一堆很不流畅的游戏,实在是玩不动,所以很讨厌打开阿里系的app,支付宝对我的噩梦体验现在都还挥之不去。可能阿里的技术大牛都搞云计算去了吧。 说正题,新来的同学…
Flutter 小技巧之实现一个精美的动画相册效果
今天的小技巧主要是「抄袭」一个充满设计感的相册控件,如下图所示是 gskinner 开源应用 wonderous 里一个相片集的实现效果,可以看到相册支持上下左右滑动,并带有高亮展示的动画效果,而且相册整体布局可以超出屏幕滚动,因为是开源的 App, 我们只需要「照搬」就可以实现一摸一样的效果,那么如果要实现这样的效果,你第一反应是用什么基础控件? [图片] 因为需要支持上下左右自由滑动,可能大家第一反应会是 Table ,还是嵌套两个 …
更新,2023年了,到底谁被放弃,心理还没点X数吗? [图片] 能学点语文再出来提问吗? 放弃的意思,是指曾经拥有,现在不需要。按照这个逻辑,只少也是flutter先普及,被大量运用到真实项目,然后现在不用了,才能构成这个提问。 情况当然不是,2018年12月,flutter才出第一个正式版,到现在才多久?这么点时间,压根不可能发生flutter先大量普及然后被放弃这个过程。 所以这个问题反映了什么?反映了提问者对flutter矛盾纠结的心理,你…
不论是 React Native 还是 Flutter 都可以用于开发跨平台应用,选哪个看你自身需求,但首先得了解清楚两者都是什么。 React Native 能够跨平台是因为它允许你使用 React/JavaScript/JSX 的写法写原生应用,而在底层他会替你调用相应的 iOS 原生组件或者 Android 原生组件,又或者直接生成适用于 Web 的 DOM 树。所以他做的事情是,用 JavaScript 调用对应系统渲染器进行渲染展示。 那么,Flutter 又是怎么跨平台的呢——Skia。当…
非常赞同高赞回答@知乎用户5F7MF0,目前App开发的需求真的是慢慢在下降的,原生开发成本也高,这么多app有多少能推出去让用户看到?小程序的推广确实方便太多了。 既然讨论到flutter,那就先讨论下flutter的优缺点。 优点:1、跨平台; 2、性能强大,流畅,混合开发中,最接近原生开发的框架; 3、Dart语言简单易学; 4、极大降低了开发成本。原来需要招一个iOS、一个安卓,用了flutter后,只需要招一个flutter人员就够了; 缺点:…
都 2021 年 10 月了,还是一个说到点子上的都没有。 简而言之就是 Flutter 刷新率限制在了 60,如果是高刷新率的设备需要自己手动解除限制。一加的刷新率有 120,所以表现尤其明显。 Flutter 那边有相关的 Issue,但是被关闭了,看开发者的意思是暂时不打算修复。 https://github.com/flutter/flutter/issues/78117 解决方法:手动去调用 Android 原生 API 解除帧率限制。可以使用一个简单的 plugin 来完成: flutter_displaymode | Flutter Package 渲染界面…
爆赞推荐:太漂亮了,一款开源的 Flutter 图表动画组件库
[图片] 文章首发于微信公众号「GitHub 黑板报」,欢迎大家关注。打开微信,使用 “搜一搜”,搜索「GitHub 黑板报」,即可关注。大家好,我是章鱼猫。 今天给大家推荐一个爆赞,超级漂亮的图表动画组件,大家值得拥有。 现在应用于 Flutter 的移动端项目越来越多了,所以,一个好看的,漂亮的基于 Flutter 的图表动画组件,就是大家必不可少的。 这个开源项目叫:fl_chart ,支持折线图、条形图、饼图、散点图和雷达图等多种图表,并且…
Flutter 的革命性在于它亲爹是 Google,技术上没有革命性。 什么代码热更,代码推送,自绘组件,别的跨平台 UI 框架很多早都有了,甚至跨的端还比 Flutter 多,举个例子:Xamarin(含Xamarin.Forms),支持开发Windows(UWP/WPF)、Linux(GTK#)、MacOS、iOS、Android、tvOS、watchOS以及WebAssembly这么多的GUI应用程序,可以说只要是有显示屏的设备就没有不能用Xamarin的时候。当然Xamarin自身也没好到哪去就是了,涉及到和原…
Flutter Desktop添加系统托盘Tray竟如此简单
Flutter桌面端添加系统托盘的库,支持MacOS、Windows、Linux三端。