logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

BLE广播包完整结构详解:Advertising Data与Scan Response字段深度解析

在BLE(低功耗蓝牙)开发中,广播包是设备实现“被动发现”的核心载体——智能硬件、工业模块、可穿戴设备等,均需通过广播包向周边扫描设备(手机、网关等)传递自身身份与基础信息,供其识别、筛选并建立连接。广播包的核心组成是Advertising Data(广播数据)与Scan Response(扫描响应数据),二者结构遵循GAP协议规范,但交互逻辑、使用场景存在明确差异,也是开发中“设备扫不到”“数据

文章图片
#ios
主流开发技术栈选型:原生开发 & Flutter 跨端蓝牙方案对比

本文对比了iOS原生(Swift)、Android原生(Kotlin)和Flutter跨端(Dart)三种蓝牙开发方案。原生开发性能优异但开发成本高,Flutter跨端效率高但性能略逊。文章从核心框架、开发效率、性能表现、兼容性和实战难度五个维度进行详细分析,并给出代码示例。建议根据项目需求选择:高频数据传输和复杂场景用原生开发;中小规模项目优先Flutter;混合开发方案可兼顾效率与性能。最终选

文章图片
#ios#flutter
iOS 启动优化实战:pre-main耗时、二进制重排与动态库裁剪全解析

iOS启动优化三大核心方案解析 本文系统介绍了iOS应用启动优化的三个关键技术方向:pre-main阶段优化、二进制重排和动态库裁剪。pre-main阶段优化通过精简初始化操作、减少全局变量和关闭调试开关,可将启动耗时降低50%以上;二进制重排通过调整代码顺序提升CPU缓存命中率,减少启动卡顿;动态库裁剪则通过删除无用库、合并冗余库和使用静态库来降低加载耗时。文章提供了OC和Swift双版本代码示

文章图片
#objective-c#ios
iOS ARC 本质:__strong / __weak / __unsafe_unretained / __autoreleasing 深度解析

iOS开发中ARC机制核心解析:本文深入剖析Objective-C的ARC内存管理本质,揭示其并非"自动管理内存"而是自动插入引用计数操作的实质。重点解析四大修饰符:1)__strong(默认强引用,易导致循环引用);2)__weak(弱引用解决方案,自动置nil防野指针);3)__unsafe_unretained(不安全的弱引用,已废弃);4)__autoreleasing

文章图片
#flutter#ios
iOS ARC 本质:__strong / __weak / __unsafe_unretained / __autoreleasing 深度解析

iOS开发中ARC机制核心解析:本文深入剖析Objective-C的ARC内存管理本质,揭示其并非"自动管理内存"而是自动插入引用计数操作的实质。重点解析四大修饰符:1)__strong(默认强引用,易导致循环引用);2)__weak(弱引用解决方案,自动置nil防野指针);3)__unsafe_unretained(不安全的弱引用,已废弃);4)__autoreleasing

文章图片
#flutter#ios
iOS dyld加载流程与App启动原理(pre-main阶段)详解

本文深入解析iOS应用启动的pre-main阶段,聚焦dyld动态链接器的核心作用与加载流程。通过4个实战示例,详细拆解了dyld从内核启动到main函数调用的完整过程,包括:1)系统内核启动dyld;2)dyld自身初始化;3)加载可执行文件;4)递归加载依赖库;5)完成重定位和符号绑定;6)初始化Runtime并执行+load方法。文章揭示了pre-main阶段的常见陷阱,如+load方法耗时

文章图片
#objective-c#ios
Flutter CustomPaint与Canvas实战:从基础绘制到复杂动效。

在Flutter开发中,我们常用的Text、Image、Container等组件,本质上都是Flutter底层通过Canvas绘制而成的。而当原生组件无法满足我们的个性化需求——比如绘制自定义图表、复杂形状、动态效果、自定义控件时,CustomPaint 与 Canvas 就是最核心的解决方案。

文章图片
#flutter
InheritedWidget 原理与性能解析

InheritedWidget 是 Flutter 中用于实现跨组件状态共享的核心组件,其设计初衷是解决多层级组件间的数据传递问题,避免通过构造函数层层传递(prop drilling),同时保证状态更新时的高效渲染。本文将从原理、工作机制、性能特点及优化方向四个维度,全面解析 InheritedWidget。

文章图片
#flutter#前端
Flutter约束模型(BoxConstraints)与布局体系完全解析

作为Flutter开发者,你一定遇到过这样的困惑:明明给Widget设置了固定宽高,却显示异常;Row/Column嵌套时,子Widget的大小总是不符合预期;明明是同样的布局代码,在不同设备上显示效果却天差地别。

文章图片
#flutter
Flutter:三棵树彻底拆解(Widget / Element / RenderObject)

作为 Flutter 开发者,我们每天都在和Text、Container、ListView打交道,写着一层套一层的 Widget 嵌套代码。但你有没有想过:这些写好的 Widget,是如何最终变成屏幕上可见的界面。

文章图片
#前端#flutter
到底了