混合栈开发,看AliFlutter如何解决图片问题(完整方案)
作者|王乾元(神漠)
出品|阿里巴巴新零售淘系技术部
前言
在 Flutter 官方体系内,对混合栈开发支持不够友好。比如对于图片资源管理,以及如何对接 Native 图片库的问题,社区上已经有一些方案,但或多或少存在一些问题,或与 Flutter 图片加载流程背离较大,难以融合。
与此同时,在电商类应用中,使用 Flutter 实现的长列表多图页面,往往面临着严重的性能问题。例如滚动过程,过多的并发图片请求阻塞了网络,造成 CPU、内存飙高。在淘宝特价版 Flutter 商品详情页面里,还遇到了更棘手的大 Cell 问题,Flutter List 的回收机制对大 Cell 无能为力,造成内存疯涨极易 OOM。
为解决这些问题,AliFlutter 基础容器在 Flutter 官方的 Image Widget 体系里进行扩展,实现了一套
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
GDB Cypher:Cypher用户的最佳选择
Neo4J 是DB-Engines图数据领域长期排名第一的数据库产品,目前有社区版和企业版两个版本: • 社区版:单实例、无容灾、不支持热备、缺乏技术支撑• 企业版:高性能、可扩展、高可用、多种安全级别、数据完整性、完全托管、丰富的监控&审计 企业版目前最便宜的4Core单实例一年价格将近30万,高昂的价格让国内中小企业望而却步。目前国内大部分用户都选择社区版并在上面做定制开发,这需要企业投入额外人力成本进行图数据自管理和运营。下面是Neo4j企业版和Gdb云产品不同规格的价格对比: 兼容性 既然想要接入Gdb,那么Gdb目前Cypher支持到什么程度了?是否可以满足业务的使用需求?目前Gdb Cypher只支持bolt-v3协议;数据类型上目前支持Temporal外所有的数据类型,子句上基本支持所有常用的子句,函数上除过一些算数
- 下一篇
Java面试题:哪些对象可以作为GC Roots?
Java是托管运行对语言,内存对分配和回收是自动进行对。 那么JVM如何确定哪些内存可以被回收呢?这里面是有特定对算法的。1、GC自动垃圾收集?Java虚拟机(JVM)垃圾回收GC任务自动确定Java应用程序不再使用的内存并将该内存回收以用于其他用途。由于内存是在JVM中自动回收的,因此Java开发人员不必考虑复杂的内存释放工作,基本不需要显式释放未使用的内存对象。 类似与自己买菜做饭洗碗和专有保姆买菜做饭洗碗的区别。工作还是要有人做,只是把复杂琐碎的GC工作交给其他线程来做。好处就是:省事。解放码农的双手,去干其他的开发工作。1、GC垃圾回收算法GC垃圾回收的规则和方法很多,Java经历了20多年的发展,还在不断进化。GC算法也多种多样。这里比较成熟的CMS。还有比较新的算法G1。无论何种算法,都有一个最重要的问题:如何认定某个对象可以被GC垃圾回收?GC回收垃圾操作基于以下假设前提:Java中大多数对象都是短命的,并且可以在创建后不久将其回收。由于未引用的对象会自动从堆内存中删除,因此GC使Java的内存效率更高。GC自动垃圾回收是查看堆内存,识别正在使用的对象和未使用的对象以及删...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Windows10,CentOS7,CentOS8安装Nodejs环境
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS关闭SELinux安全模块
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2全家桶,快速入门学习开发网站教程
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS7设置SWAP分区,小内存服务器的救世主