首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JDFlutter | 京东技术台新一代跨平台开发框架

京东目前已经有非常成熟的跨平台解决方案 JDReact,如何在 JDReact 与 Flutter 中选择合适的开发方案?...我们认为如果是需要进行线上业务包升级、热修复等动态更新的情况,优先选择 JDReact;没有动态更新需求的可以选择 Flutter。...在 JDReact 框架,已经封装了非常多的 Native API,通过 JSBridge 传递原生与 JS 之间的数据。...▲JDFlutter 签到排行榜 数据统计 JDFlutter 对线上数据进行统计主要包括业务数据和异常数据,无论是哪一方面的数据出现异常,都要及时采取措施。...以上3种方法都可以统计出页面数据,方案1可以统计出入口的数据,方案2可以统计出除降级以外的业务数据,方案3可以统计出更精确的业务数据,同时可以提供更详细的其他字段进入页面时从后台下发的数据

9.7K51

Flutter 笔记 | 修改 App 图标、名称、启动

还是希望自己整理一份属于自己的东西,若干年后,点击查看,还能回想起现在艰辛讨生活的自己如何在帝都各种熬夜,然后和孩子吹牛逼~ ??? 动笔前,犹豫好久,要怎么样轰轰烈烈来篇记录呢?...想想各位掘金大佬,还是不得瑟了,依旧项目情况,整理自己的 Flutter 笔记,然后慢慢进行了解 Flutter 吧~ 附上之前基于 macOS 配置 Flutter 链接,方便日后自己查看Flutter...Android 修改应用图标 通过 Android Studio 打开 Flutter android Module,右键选择 “New ===> Image Asset”: ?...Step 2:修改 launch_background 文件 先把 UI 给你提供的启动图片对应的放在 drawable 。 随后开启定义你的启动图片: <?...2. iOS 修改启动 这块我觉得 iOS 还蛮不错的,很 easy,替换下面的三张图就好: ? 效果都一样,这里就不放置效果图咯。

2.2K41
您找到你想要的搜索结果了吗?
是的
没有找到

干货 | 携程火车票Flutter最佳实践

在Profile模式下,通过Android Studio 看页面的FPS,注意需要在HotReload 连接的情况下查看。...针对这种情况我们对将要加载的图片进行预加载处理,比如列表在分页请求数据回来的时候做图片预加载。还有,下一个页面的图片,需要一进去就有图片直接显示,就可以在当前页面做图片预加载。 ?...4.2 Flutter 数据预加载 为了缩短用户的加载等待时长,我们经常需要一些预加载方法。比如在前一个页面预加载下一个页面的数据,或者在长列表的分页请求时候,可以做分页预加载。...比如当你滑动到第五个可见的时候,就提前把下一数据加载好。 列表通过桥方法获取上一个页面预加载的数据,这样就能有一个直出体验,这里要考虑数据已经加载好、加载、加载失败的情况。...///请求列表数据数据 void loadListData(HotelQuery query) { ///在首页提前获取列表数据并缓存到本地,当用户进入列表时可以直接展示数据 if (resultModel

2.1K30

掌握Flutter底部导航栏:畅游导航之旅

我们将介绍如何创建基本的底部导航栏结构,自定义其外观,实现与页面的切换和状态管理,并探索一些高级功能,徽章、动画效果等。...Flutter底部导航栏概述 在Flutter,底部导航栏是一种常见的用户界面组件,通常用于展示应用程序的主要功能模块或不同页面的快速导航入口。...在接下来的章节,我们将深入探讨如何在Flutter创建和定制底部导航栏,包括基本结构的构建、外观的定制、与页面的切换以及状态管理等方面的内容,帮助读者全面掌握底部导航栏的实现技巧与方法。 3....通过本文的介绍,我们对如何使用Flutter构建底部导航栏有了全面的了解。...此外,我们还探讨了如何利用状态管理库(Provider和Bloc)来管理底部导航栏的状态,以及如何实现一些高级功能,添加徽章、动态更改导航栏项以及实现动画效果等。

12810

干货 | 从47%到80%,携程酒店APP流畅度提升实践

在实际监控,会针对不同的指标,设计不同的监控标准,:慢加载、白屏、奔溃、卡顿等系统因素,除了大盘指标外,还增加了各指标影响占比、酒店主页面的报错率趋势、版本对比趋势、报错机型top分布等。...对于业务场景比较重的因素,结合业务数据进行分桶等方式的监控,:详情房型数量关联TTI耗时分布、单酒店crash数据等。...需要考虑数据预加载的时机,避免服务的资源浪费;第二,酒店列表、详情、订单填写都有价格信息,价格信息对用户来说是动态信息,实时都有变价可能,所以需要考虑数据预加载的缓存策略,避免因为价格的前后不一致造成用户误解...另外我们可以借助于AS里面的Flutter Performance工具查看Flutter面的rendering性能问题,里面有个很有用的功能Widget rebuild stats,它统计在渲染UI的时候...通过上述方式的治理,进入填写内已明显感觉页面比较轻,主服务返回后页面立等可刷新,页面的渲染速度大幅提升。

1.8K30

干货 | Flutter在携程复杂业务的高性能之旅

一、背景 携程火车票在十余个核心业务的列表及主流程大规模进行了Flutter实践。经过一年多的开发、维护 ,总结了一套行之有效的性能优化方案。...通过Flutter Performance查看组件渲染次数,发现整个界面都在刷新,当我们多次滑动页面后,发现很多组件都渲染了多次,如下图所示: 通过DevTools,在滑动改变顶部的透明度时,发现FPS...酒店详情的头部header,跟随页面的滚动需要实时的计算当前的透明度,滑动到最顶部的时候全透明显示,滑动出头部图片显示区域的时候则完全显示出来,并且在界面滑动的过程需要监听每个对应模块滑动的偏移量,...延时加载:在很多场景酒店列表,酒店详情头部轮播图,第一次只需要加载首屏内的数据,就可以对非首屏的数据进行延迟加载,避免加载瞬时资源竞争,优先保证重要资源的加载,实现良好的加载体验。...GPU 的线程问题可以通过查看渲染的次数,渲染的范围来确定。

1.5K20

MOO音乐的Flutter实战总结之内存治理(

本系列文章将提炼 MOO APP 开发遇到的情况,就 Flutter 内存占用治理方面,分享日常开发的一些基本认知、注意要点、排查方法和优化方案。内存治理篇文章共分上、、下三篇,本篇为中篇。  ...对同一个功能或页面进行反复相同的进入、退出操作; 然后执行强制 GC,查看不同操作后的内存快照; 对比该功能关联的对象实例增加情况; 如果强制 GC 后实例只增不减或该回收的对象没有被回收,没有特殊的延时处理一般就可以判断相关代码有问题...下面以 Image 内存泄漏排查为例,展示具体的问题代码定位过程,目标是排查列表项内存泄漏,功能进出动作对应着列表项的滑窗动态创建和销毁。 1....我们打开 APP 其中一个页面,某个列表,通过 Xcode 观察应用整体初始内存 470MB,如图一所示。...MOO音乐的Flutter实战总结之内存治理(上) QQ音乐招聘Android/ios客户端开发,点击左下方“查看原文”投递简历~ 也可将简历发送至邮箱:tmezp@tencent.com

88221

Flutter 实现原理及在马蜂窝的跨平台开发实践

Flutter 的控件树直接由渲染引擎和高性能本地 ARM 代码直接绘制,不需要通过中间对象(Web 应用的虚拟 DOM 和真实 DOM,原生 App 的虚拟控件和平台控件)来绘制,使它有接近原生页面的性能...于是我们采集了一些其他方面的数据。...关于动态化的支持,目前 Flutter 还不支持线上动态性。如果要在 Android 上实现动态性相对容易些,iOS 由于审核原因要实现动态性可能成本很高。...最后一点比较有争议,Flutter 不会从程序拆分出额外的模板或布局语言, JSX 或 XM L,也不需要单独的可视布局工具。...目前阿里的闲鱼开发团队已经将 Flutter 用于大型实践,并应用在了比较重要的场景(产品详情),为后来者提供了良好的借鉴。

1.9K20

干货 | 从47%到80%,携程酒店APP流畅度提升实践

在实际监控,会针对不同的指标,设计不同的监控标准,:慢加载、白屏、奔溃、卡顿等系统因素,除了大盘指标外,还增加了各指标影响占比、酒店主页面的报错率趋势、版本对比趋势、报错机型top分布等。...对于业务场景比较重的因素,结合业务数据进行分桶等方式的监控,:详情房型数量关联TTI耗时分布、单酒店crash数据等。...需要考虑数据预加载的时机,避免服务的资源浪费;第二,酒店列表、详情、订单填写都有价格信息,价格信息对用户来说是动态信息,实时都有变价可能,所以需要考虑数据预加载的缓存策略,避免因为价格的前后不一致造成用户误解...另外我们可以借助于AS里面的Flutter Performance工具查看Flutter面的rendering性能问题,里面有个很有用的功能Widget rebuild stats,它统计在渲染UI的时候...通过上述方式的治理,进入填写内已明显感觉页面比较轻,主服务返回后页面立等可刷新,页面的渲染速度大幅提升。

1.6K30

6详解AppBar小部件

由于它是一个如此常用的组件,因此 Flutter 为该功能提供了一个名为AppBar的专用小部件。 在本教程,我们将通过一些实际示例向您展示如何在 Flutter 应用程序自定义 AppBar。...以下是我们将介绍的内容: Flutter 的 AppBar 是什么? 应用栏布局 自定义 AppBar Flutter 的 AppBar 是什么?...示例包括返回上一的导航箭头或打开抽屉的菜单图标。 当上一条路线可用时,导航箭头会自动出现。...工具栏包含文字,图标,按钮,和其他任何公司的前景,除了小部件,Container和Image。...关于 Flutter 的 AppBar 必须提供的所有内容的完整演练。我希望这篇文章能帮助你在未来所有的 Flutter 应用程序创建漂亮的 AppBars。

16.3K10

Flutter 产物分析与减包方案

在混合开发场景下,Flutter 的包增量略大一直是被大家诟病的一点,但 Google 官方明确表示了 Flutter 不会支持动态化,而且目前 Flutter SDK 官方还没有提供一套定制方案。...1.2 减包方案 减包的基本方法有二: 删产物:把产物没用的部分直接删掉 挪产物:把可以暂时移除的部分挪走改变为远端下发,同时需要修改产物加载逻辑,使 Flutter 支持动态加载远端下发的部分产物...详情可以看官方 Wiki 的介绍:https://github.com/flutter/flutter/wiki/Flutter-engine-operation-in-AOT-Mode 同一个进程里可以有很多个...我们知道 App Store 审核条例不允许动态下发可执行二进制代码,因此对于以上 4 个快照,我们只能下发数据段的内容(kDartIsolateSnapshotData 与 kDartVmSnapshotData...需要注意的是以上几点修改都是依赖( buildroot,skia 等)而非源码,因此需要我们 fork 一份 flutter engine,然后先改好依赖之后,获取对应依赖的 commit 号再填进

2.5K40

Flutter之GetX依赖注入tag使用详解

》•《Flutter之GetX依赖注入使用详解》 通过源码得知,GetX 依赖注入 tag 的主要作用是用于区分相同类型依赖的不同实例。...下面将介绍两种笔者在开发过程遇到的典型场景。 相同类型不同作用的依赖注入 该场景一般针对基础数据等已有类型, String、int 等。虽然类型相同,但是在开发中使用场景或作用不同。...,因为获取到的 Controller 实例是同一个,导致数据是相同的并没有加载新的新闻内容。...return Container(); /// news content }, tag: tag, )); } } 除了像详情跳转详情这种跳转同一面的场景还有页面嵌套复用时也可以使用这种方式解决依赖注入的问题...,比如 A 页面内容里嵌套了 B 页面,又存在跳转 B 页面的业务,则可以使用 tag 灵活解决依赖注入问题,本质也是同一个页面存在不同的实例,与上面介绍的示例一样。

2K30

Flutter开发环境搭建

面的操作都是在 MAC下完成的 使用镜像 由于在国内访问Flutter有时可能会受到限制,Flutter官方为中国开发者搭建了临时镜像,大家可以将如下环境变量加入到用户环境变量: export...注意: 此镜像为临时镜像,并不能保证一直可用,读者可以参考详情请参考 Using Flutter in China 以获得有关镜像服务器的最新动态。...获取Flutter SDK 去flutter官网下载其最新可用的安装包,转到下载。 注意,Flutter的渠道版本会不停变动,请以Flutter官网为准。...另外,在中国大陆地区,要想正常获取安装包列表或下载安装包,可能需要访问外国网站,读者也可以去Flutter github项目下去下载安装包,转到下载 。...解压安装包到你想安装的目录,: cd ~/flutter unzip ~/Downloads/flutter_macos_v0.5.1-beta.zip 添加flutter相关工具到path

1K20
领券