Flutter
共 123 篇文章

Flutter 项目案例(十二):原生插件与多端配置
同一个 Flutter 插件要覆盖多个平台时,Dart 接口、原生实现和发布元数据各自放在哪里?示例从目录结构回答这个问题。

Flutter 项目案例(十一):退款申请、进度与协商记录
退款页会经历金额确认、附件上传、提交和进度跟踪。文章重点处理各阶段的状态保留、重复提交与日志展示。

Flutter 项目案例(十):搜索防抖与结果竞态
400ms 防抖只能减少请求次数,无法保证响应顺序。示例用请求代次丢弃迟到结果,并分别处理地图地址和内容搜索。

Flutter 项目案例(八):第三方支付回调与订单状态
第三方 SDK 返回后,订单状态仍要向服务端确认。代码示例串起支付编号、应用回跳和结果查询,并处理重复回调。

Flutter 项目案例(九):分页刷新与控制器销毁
下拉刷新与加载更多可能同时碰上旧请求。本文展示 ListMixin 如何管理请求代次、列表状态和页面销毁后的资源清理。

Flutter 项目案例(七):订单参数与费用如何汇总
请求里哪些字段来自用户选择,哪些金额只能由服务端确认?示例将表单快照、费用展示和最终计价分开处理。

Flutter 项目案例(五):地图位置选择、搜索结果与地址回传
选择城市、搜索地点或拖动地图后,地址结果都要回到同一份选择状态,再交给后续下单页面。

Flutter 项目案例(六):从详情页进入提交面板
从详情页进入表单时,已有选择怎样带过去、失败时又该保留什么?本文落到共享状态、时段选择和提交面板的实现。

Flutter 项目案例(四):首页数据解析、compute 与页面活跃状态
首页数据先解析再交给卡片;示例将 JSON 转换放到独立 isolate,并在页面不可见时暂停轮播计时器。

Flutter 项目案例(三):定位请求的生命周期与失败降级
定位页面会遇到权限变化、地图事件和传感器缺失等分支。文中按数据流说明平台回退、区域解析与本地缓存如何衔接。

Flutter 项目案例(二):隐私同意、SDK 初始化与登录恢复
隐私确认之前,第三方 SDK 和登录会话分别应处于什么状态?示例给出初始化顺序,并标出用户拒绝后的处理边界。

Flutter 项目案例(一):从 main() 到首页
应用从 main() 到首页要经过哪些准备?这篇把环境初始化、GetX 注册、隐私确认和首个路由放进同一条启动链路。

Flutter IPP 协议静默打印插件开发指南
基于 IPP 打印协议做企业级静默打印方案:局域网打印机自动发现、打印作业提交与状态轮询,一套插件架构同时适配桌面与移动五端

Flutter 系统权限申请与配置详解
用 permission_handler 一套 API 申请相机、定位等系统权限:含权限被拒后的引导话术和跳转设置页处理

Flutter 与设备信息桥接技术详解
机型、系统版本、CPU 内存、网络状态、电池信息一次拿全:插件、MethodChannel、FFI 三种取数方式对比,附设备跑分对比与健康监控做法

Flutter 与文件管理桥接技术详解
Android File API 与 iOS FileManager 双端桥接:内部、外部、缓存目录怎么选,文件浏览搜索预览一条龙,压缩解压与云存储集成的做法

Flutter 与短信电话桥接技术详解
短信验证码场景的双端桥接:短信收发与模板管理、通话记录查询、来电监听识别,原生能力一次封装处处复用

Flutter 与联系人管理桥接技术详解
Android ContactsContract 与 iOS Contacts Framework 双端桥接:联系人增删改查、分组管理、搜索与备份恢复

Flutter 小窗播放桥接技术详解
视频悬浮窗的双端原生接法:进入画中画模式、悬浮窗内播放暂停切集,配合播放器插件做出完整的后台小窗体验

Flutter 与定位服务桥接技术详解
Android LocationManager 与 iOS CoreLocation 双端桥接:实时位置追踪、地理围栏、轨迹记录,高精度与低功耗模式的取舍

Flutter 与传感器桥接
以健身追踪应用为引子:加速度计、陀螺仪、磁力计等传感器选型,采样频率与功耗的权衡、低通滤波去噪,再讲传感器融合的实战套路

Flutter 与音频视频播放桥接
以音乐视频应用为引子:本地与在线媒体播放、播放列表管理、后台播放与音频焦点,MP4/HLS 等格式兼容和双端差异一次讲透

Flutter 与相机和相册桥接
以社交分享应用为引子:camera 拍照录像、image_picker 与 photo_manager 做媒体选择,权限、设备兼容与大图内存全覆盖

Flutter 与 NFC 近场通信桥接
以智能门禁系统为引子:NFC 三种工作模式、NDEF 数据格式与标签选型,flutter_nfc_kit 读卡写卡,以及双端平台差异

Flutter 与蓝牙设备桥接
以智能家居项目为引子:经典蓝牙与 BLE 选型,flutter_blue_plus 做设备扫描、连接管理与数据传输,Android 12+ 蓝牙权限别漏

Flutter 状态管理-Riverpod 实战指南
Riverpod 落地实战:ProviderScope 初始化、ConsumerWidget 读状态、autoDispose 管资源释放,附常见误区

Flutter 状态管理-综合实战指南
同一套电商功能用 Provider、BLoC、GetX、Riverpod 各做一遍:对比写法与适用场景,帮你选出最合适的方案

Flutter 状态管理-BLOC 实战指南
跟着一个咖啡店 App 从零搭 BLoC:事件、状态、Bloc 三件套,订单、支付、库存更新全走状态流

Flutter 集成穿山甲 SDK 桥接
MethodChannel 手写穿山甲广告桥接:开屏、激励视频、Banner、插屏四种广告位接入与收益数据统计

Flutter 跨平台数据同步与状态管理桥接
增量与双向同步策略、离线队列、数据冲突合并规则:Flutter 跨端数据一致性的落地架构

Flutter 与第三方 SDK 桥接最佳实践
统一接口抽象屏蔽各家 SDK 的差异:SDK 工厂统一注册管理、初始化与资源释放的生命周期,再谈错误处理和跨平台兼容的那些坑

Flutter 平台通道高级应用
手写自定义二进制编解码器压缩通道传输开销,附平台通道性能调优与安全通信的实战做法

Flutter FFI 桥接技术
用 dart:ffi 直接调用 C/C++ 原生库:Dart 与 C 类型映射、字符串数组的指针转换、calloc 内存管理,再用 ffigen 自动生成绑定

Flutter 与桌面平台桥接
Flutter 落地桌面三端:Windows 热键注册与文件对话框、macOS/Linux 系统 API 调用思路,把移动端代码复用到桌面应用的适配要点

Flutter 与 Web 平台桥接
在网页端双向调用原生脚本:用注解声明外部函数、把 Dart 回调注册给页面用,并聊聊 Web 端渲染的性能取舍

Flutter 与原生平台深度桥接
MethodChannel 往深了玩:自定义二进制编解码器压榨通道性能,讲清内存管理与复杂场景的桥接模式,给高性能混合应用打底

Flutter × OpenHarmony 轻量设备:LiteOS 可行性分析
区分 OpenHarmony mini、small 与 standard 系统类型,评估现有 Flutter OHOS 社区工具链在轻量设备上的适用边界。

Flutter 数据:离线同步与一致性实践
弱网离线场景的完整打法:Offline-First 架构、hive 与 drift 缓存选型、syncState 状态机与冲突合并策略

Flutter 安全:数据安全与加密实践
Token 别明文存:flutter_secure_storage 接系统钥匙串,SQLCipher 给数据库加 key,HTTPS 证书校验防中间人

Flutter 工程化:CI/CD 自动化发布实践
从工具选型到流水线搭建:GitHub Actions、Jenkins、Codemagic 怎么选,Docker 统一构建环境,Lint、测试、灰度发布串成一条线

Flutter 鸿蒙化进阶:OpenHarmony 性能、插件与发布检查
基于 OpenHarmony SIG 社区 Flutter 工具链,整理性能测量、插件覆盖、模型配置和 HAP 发布前检查。

Flutter 桌面端开发实践指南
Windows、macOS、Linux 三端环境搭建,宽屏三栏布局、键盘快捷键与右键菜单适配,附打包发布流程

Flutter 鸿蒙化:HarmonyOS NEXT 适配指南
梳理 Flutter 适配 HarmonyOS NEXT 的社区方案与架构边界,并标注示意内容和实际适配仓库的区别。

Flutter 鸿蒙化概述篇:从愿景到落地
项目评估从目标系统、API 与 Flutter 适配分支入手,再核对插件覆盖、构建链和设备验证条件。

Flutter 鸿蒙化基础适配:OpenHarmony 社区版工程流程
基于 OpenHarmony SIG Flutter 适配仓整理工程创建、HAP 构建、应用模型边界与插件检查流程。

Flutter混合开发实践
把 Flutter module 嵌进原生 App:Android 接 FlutterActivity、iOS 用 podhelper,通道通信与启动性能一并讲

Flutter集成支付SDK
支付宝 tobias 与微信支付双接入:下单调起支付、客户端回调处理、签名验签,支付链路一次跑通

Flutter集成Firebase Analytics
google-services.json 配置、logEvent 打自定义事件、自动采集屏幕浏览:Firebase Analytics 接入与事件设计

Flutter集成社交平台登录
微信、Facebook、Google 三家登录接入:OAuth 授权码换 token、用户信息拉取,第三方登录一次搞定

Flutter 使用 Melos 管理多包项目
用 Melos 管理 Flutter 单仓多包:统一安装依赖、一条命令给所有子包跑静态检查和测试,附带版本号联动发布的流程

Flutter集成地图服务
高德地图与 Google Maps 双接入:Key 配置、地图展示、定位、路径规划,一次配齐地图常用能力

Flutter 注解详解
@override、@deprecated 到 required 关键字:内置注解逐个讲清用法,再手写一个自定义注解配合代码生成

Flutter 插件开发高级篇
插件写完只是开始:单元与集成测试怎么写,WeakReference 管资源,pub.dev 发布流程与多语言支持

Flutter 自定义注解详解
用 const 类自定义注解,配合 build_runner 在编译期生成代码:从注解定义到 source_gen 处理器的完整链路

Flutter集成Sentry日志收集
DSN 初始化、captureException 上报崩溃、configureScope 绑定用户信息:Sentry 让线上错误可追踪

Flutter 插件开发 Android 平台篇
Kotlin 与 Java 两种写法实现 MethodChannel 插件,onAttachedToEngine 绑定、引擎解绑时清理,附权限申请处理

Flutter 插件开发基础篇
从 flutter create --template=plugin 建项目讲起,理清 Dart 层、原生层、三种通道类型各自的分工

Flutter 插件开发 iOS 平台篇
Swift 与 Objective-C 两种写法实现 FlutterPlugin,podspec 依赖声明、register 注册通道,附 iOS 内存管理要点

Flutter 多线程和并发编程
Isolate 不共享内存,用 SendPort/ReceivePort 传消息;耗时计算扔进 Isolate,主线程只管 async/await

Flutter无障碍开发指南
Semantics 语义标签、焦点管理、MergeSemantics 合并朗读,让 TalkBack 与 VoiceOver 正确播报你的界面

Flutter 依赖注入详解
构造函数注入、Provider、GetIt 服务定位器三种方式,把对象创建与使用解耦,让代码可测试、易替换

Flutter 布局约束系统详解
父传约束、子定大小:BoxConstraints 的紧约束与松约束怎么用,Container、Center 等常见 Widget 的约束行为一次讲透

Flutter 错误处理和日志管理
runZonedGuarded 兜住未捕获异常,FlutterError.onError 接住框架报错,分级日志让线上问题可追踪

Flutter 热重载和热重启机制
热重载只重建 Widget 树、保留状态,适合调 UI;热重启清掉状态重跑 main,改静态变量或全局状态时用它

Flutter 生命周期管理详解
initState、didChangeDependencies、didUpdateWidget、dispose 各在何时触发:资源在哪一步初始化、哪一步释放

Flutter深色模式适配实践
两套 ThemeData 定义明暗配色,ThemeMode.system 跟随系统,ChangeNotifier 管手动切换与持久化

Flutter 设备通信详解
WiFi 连接管理、Socket TCP 长连接、蓝牙扫描配对:Flutter 直连局域网设备与外设的三套通信写法

Flutter 应用打包发布详解
Android:keytool 生成签名,flutter build 打 apk/appbundle;iOS 证书与 Archive 流程走完

Flutter 实现自定义时间选择器
ListWheelScrollView 做滚轮时间选择器:FixedExtentScrollPhysics 让滚动自动吸附,透视与放大参数调出手感

Flutter 性能测试详解
flutter_driver 连真机采集 Timeline:traceAction 量启动耗时与列表滚动帧率,TimelineSummary 直接出报告

Flutter 性能监控:FrameTiming、RSS 与 DevTools 实战
使用 FrameTiming 观察 build、raster 与总帧耗时,配合可取消的内存采样和 DevTools 定位 Flutter 性能问题。

Flutter 包为什么越来越大?用 analyze-size 找出真正占空间的内容
用 Flutter size analysis 拆解 release 包中的 Dart、原生库、资源与字体,再针对实际占比优化。

Flutter SliverAppBar 组件详解
pinned 吸顶、floating 下拉即现、snap 松手自动收放:三个开关组合出折叠大图头,FlexibleSpaceBar 配背景图做详情页头部

Flutter 冷启动优化:哪些初始化不该堵在首帧前
避免在 build 中重复创建初始化 Future,拆分首帧必需工作,并用设备与构建模式记录冷启动基线。

Flutter SliverGrid 组件详解
CustomScrollView 里的网格:固定列数与最大格宽两种 delegate,childAspectRatio 控宽高比

Flutter 内存泄漏怎么查?Timer、Stream、图片缓存与 DevTools
从 Timer、Stream 和 AnimationController 生命周期入手,配合图片解码尺寸与 DevTools 快照定位 Flutter 内存问题。

Flutter SliverList 组件详解
BuilderDelegate 按需创建列表项、ListDelegate 适合固定短列表:keepAlive 与重绘边界参数说清楚

Flutter CustomScrollView 组件详解
slivers 混排 SliverAppBar、SliverList、SliverGrid;普通 Widget 包 SliverToBoxAdapter 塞入

Flutter 集成极光消息推送
极光推送(JPush)在 Flutter 里的接法:原生侧配置各手机厂商的推送通道,Dart 侧统一处理通知到达、点击跳转与透传消息

Flutter 动画掉帧排查:RepaintBoundary 到底该不该加
用 AnimatedBuilder 缓存静态子树,按需隔离重绘区域,并用 FrameTiming 检查 build、raster 与帧延迟。

Flutter 渲染优化详解
用 DevTools 定位 Flutter 帧耗时,理解列表默认重绘边界,并按需优化图层与图片尺寸。

Flutter Riverpod 状态管理详解
Provider 的继任者:编译时安全、不依赖 BuildContext 取数,FutureProvider 直接处理异步,ref.watch 订阅更新

Flutter Redux 状态管理详解
单向数据流那一套:Action 描述意图、Reducer 纯函数产出新状态,Store 集中管理,状态不可变靠 copyWith

Flutter SingleChildScrollView 组件详解
内容超屏就包一层:滚动方向、反向滚动、iOS 回弹 vs Android 夹紧两种 physics,键盘顶起时别被遮住输入框

Flutter Bloc 状态管理详解
事件驱动那一套:on 注册事件处理器,BlocBuilder、BlocListener、BlocConsumer 三种消费方式各用在哪

简单了解Flutter
一套代码跑 iOS/Android/Web/桌面:自绘渲染的三层架构、万物皆 Widget 的组合思想,附 Hello Flutter 上手例子

Flutter PageView 组件详解
轮播图、引导页、整页滑动:PageView 配合 PageController 跳页、监听页码,指示器圆点联动一次写完

Flutter 实现 Widget 截图并保存到本地
给目标组件包一层截图边界并绑定全局键,一键把任意界面渲染成图片:可调清晰度倍率,支持保存到相册或直接分享

Flutter GridView 组件详解
count 定列数、extent 定格子最大宽、builder 懒加载海量格子:三种构造方式对号入座,横竖间距与宽高比一次配好

Flutter ListView 组件详解
builder 按需构建长列表、separated 自动加分割线、ListTile 一行搞定图标标题副标题,下拉刷新和无限加载一次配齐

Flutter 集成测试详解
integration_test 包跑真机全链路:从输入账号密码点登录,到接口返回后页面跳转,端到端验证真实流程

Flutter 实现应用内更新
PackageInfo 取本地版本号,与服务端配置比对发现新版本后弹更新框;Android 下载 APK 完成应用内升级,iOS 跳转 App Store

Flutter 测试覆盖率详解
flutter test --coverage 收集 lcov 数据,genhtml 生成可视化报告,行覆盖与分支覆盖两个维度看测试盲区

Flutter Scaffold 组件详解
AppBar、抽屉、底部导航、悬浮按钮、SnackBar 一套配齐:Scaffold 拼出标准 Material 页面骨架,drawer 打开姿势也讲了

Flutter 推送通知实现详解
FCM 拿 Token、requestPermission 要权限,flutter_local_notifications 做本地提醒:前台展示与点击跳转全覆盖

Flutter 权限处理详解
permission_handler 一行 request() 申请相机定位存储;两端先声明权限,被拒后引导用户去设置页手动开

Flutter 国际化实现详解
intl + flutter_localizations 配好 delegates,ARB 管翻译文案,Locale 切换语言,复数占位符格式一次搞定

Flutter Stack 组件详解
Positioned 按坐标精准叠放、未定位子组件用 alignment 对齐:图片上压文字、角标、悬浮按钮这类叠加布局的标准写法

Flutter SQLite 数据库详解
sqflite 单例封装 DatabaseHelper:建表、增删改查、事务、版本升级 onUpgrade,一套本地关系型存储的完整套路

Flutter WebSocket 实现详解
封装 WebSocketClient 单例:心跳保活、断线重连、StreamController 广播消息,做出可用的实时通信客户端

Flutter Container 组件详解
Container 集宽高、内外边距、BoxDecoration 于一身:圆角、边框、阴影一次配齐,顺带避开 decoration 与 color 混用的报错

Flutter Dio 网络请求详解
Dio 落地写法:拦截器统一加 token 与错误处理、BaseOptions 全局配置、文件下载与请求取消的实战代码

Flutter Row 和 Column 组件详解
主轴对齐、交叉轴对齐、mainAxisSize 三组属性吃透横竖布局,顺带避开 Column 里套 ListView 的无限高度报错

Flutter GetX 状态管理详解
.obs 响应式变量配 Obx 自动刷新,Get.put 与 lazyPut 管依赖注入,顺带把 GetX 的路由跳转也讲了

Flutter Provider 状态管理详解
官方推荐的 InheritedWidget 封装:ChangeNotifierProvider 供数据,Consumer、watch、read 三种取数姿势

Flutter 嵌套路由详解
嵌套 Navigator 给底部 Tab 各配独立导航栈:GlobalKey 控制子路由,切换 Tab 不丢页面状态

Flutter 自定义动画详解
内置 Tween 不够用就自己写:在 lerp 里定义插值规则,把颜色、圆角、阴影打包进一个 BoxDecorationTween,动画组件按需定制

Flutter 路由动画详解
PageRouteBuilder 手写转场:淡入、滑动、缩放三种过渡效果,附可复用的 CustomPageRoute 封装

Flutter 交错动画详解
一个 Controller 驱动多个 Tween:用 Interval 给透明度、宽高、圆角各划一段播放时间,元素依次登场做出层次感

Flutter Hero 动画详解
共享元素转场:两端 Hero 用同一个 tag,Navigator 跳转时图片自动从列表飞入详情页,列表到详情的视觉连续性就这么来的

Flutter 组合动画详解
缩放、旋转、位移拼成一套连贯动作:顺序播放用 Interval 排时间轴、并行叠加直接一起跑,复杂动效拆解开来就这么简单

Flutter 动画曲线详解
曲线决定动画的节奏感:easeInOut 缓入缓出、elastic 弹性、bounce 弹跳分别适合什么场景,附常见曲线对照 demo 与自定义曲线写法

Flutter Widget 测试详解
testWidgets 搭测试环境,pumpWidget 渲染组件,Finder 定位元素、pumpAndSettle 等动画收尾,UI 交互一次测全

Flutter 单元测试详解
group 组织用例、setUp 准备环境,mockito 生成 Mock 隔离外部依赖,纯 Dart 逻辑先测透再往上叠

Flutter 文件操作详解
path_provider 拿文档目录、临时目录、外部存储:文本读写、二进制读写、复制移动删除,配 try-catch 别让 IO 异常崩了应用

Flutter 主题切换实现详解
ThemeData 定义亮暗两套主题,ThemeMode 切 system/light/dark,ChangeNotifier 触发整树重建

Flutter SharedPreferences 详解
键值对小数据就用它:setString/getString 存取、remove 删除,包一层 PreferencesUtil 工具类,全局到处直接调

Flutter 路由参数传递详解
构造函数直传、pushNamed 带 arguments、onGenerateRoute 集中解析:Flutter 页面间传参的三种姿势与取舍

Flutter 命名路由详解
routes 路由表集中注册、pushNamed 跳转、onUnknownRoute 兜底未知页、清栈返回登录页,一套命名路由组合拳

Flutter 基础导航详解
Navigator.push/pop 入门、await 等页面返回值、PageRouteBuilder 手写滑动淡入转场:导航最常用的三板斧

Flutter 基础动画详解
隐式动画与显式动画的分水岭:AnimatedContainer 改属性就自动过渡,AnimationController 给你逐帧控制权

Flutter路由管理进阶
NavigatorObserver 监听页面进出、登录拦截未登录跳转、canActivate 前置守卫:路由层的权限与埋点管控

Flutter集成微信SDK - Fluwx详解
fluwx 接微信登录、支付与分享:开放平台 AppID 申请、Android/iOS 原生配置、回调处理的完整流程