- 博客(311)
- 资源 (8)
- 收藏
- 关注
原创 Retrofit2 使用@Multipart上传文件
1、上传单个文件1.1定义接口 @Multipart @POST("uploadImgs") Call<HttpBaseResult<List<PicResultData>>> uploadSingleImg(@Part("description") RequestBody d
2018-11-28 16:58:49
41774
14
原创 Flutter Riverpod 状态管理实践指南
新建一个文件,比如 counter_provider.dart,使用 @riverpod 注解。这会生成 counter_provider.g.dart,里面包含可直接使用的 counterProvider。Riverpod 的设计目标是让状态管理这件事变得可预测、可测试、可组合。注解版和手动版并不是对立的两条路,而是同一套 API 的两种使用方式。
2026-10-10 09:37:04
227
原创 Flutter UI 适配方案对比:从 flutter_screenutil 到原生响应式
Flutter UI 适配无绝对优劣:若仅限手机端且需像素级还原,flutter_screenutil 快速高效;若需兼容平板、折叠屏或 Web,重视可维护性与无障碍体验,原生响应式更优。前者依赖等比缩放,代码侵入强、难迁移;后者基于空间自适应,支持 const、布局灵活,长期更可持续。建议根据项目边界决策,必要时可分阶段过渡。
2026-09-23 09:20:07
152
原创 1、iOS 证书体系核心文件:关系与区别全解析
本地私钥是 Mac 钥匙串中与证书配对使用的一把“数字钥匙”,它只存在于生成 CSR 的那台 Mac 上,苹果服务器和证书文件里都没有它。没有私钥,证书就是一张“没有印章的身份证”,无法用来签名 App。CSR:申请表,生成时本地产生私钥。本地私钥:Mac 钥匙串中的“数字钥匙”,签名 App 的唯一凭证,只存在于本机,丢了只能重新生成。开发证书:调试用的身份证。发布证书:分发/上架用的身份证。APNs 证书:推送专用的身份证,分开发/生产两套。描述文件。
2026-09-10 15:35:00
78
原创 3、iOS 打包证书与描述文件操作详细流程
本文详细阐述iOS打包证书与描述文件全流程:从生成CSR、创建App ID,到申请开发/发布证书、添加测试设备、创建对应描述文件(Development/Ad Hoc/App Store),并指导导出.p12用于团队协作或APNs推送。最后通过Xcode归档导出IPA,支持蒲公英内测分发或提交App Store。附快速自查清单及工具推荐(如Fastlane match),确保流程清晰、高效,避免因证书缺失或配置错误导致打包失败。
2026-09-10 15:07:13
88
原创 BLE蓝牙实时传输:当“只管发送”遇上“底层流控”
<think>我们需要根据用户要求,生成≤150字的文章摘要。用户提供了完整的文章内容,主题是BLE Notify模式与底层流控机制。需要提炼核心观点。摘要应简洁,不超过150字。总结三个层次?注意字数。我们需生成一段话,涵盖文章主要矛盾:应用层Notify不管,底层协议栈有流控;二者不同层次;物理层ACK和窗口机制;最终统一。控制在150字内。确保不超过150字。可写:文章解析BLE Notify“只管发送”与底层“暂停取数”的矛盾,指出二者分属应用层与协议栈层。应用层调用非阻塞、不等待;底层为物理链路稳
2026-09-02 15:29:14
304
原创 Flutter 插件中 C++ 跨端编译之 dart:ffi
维度AndroidiOS构建工具产物形式独立 .so 动态库静态链接进 Runner 二进制Dart 加载方式编译触发自动.podspec自动纳入编译手动命令通常不需要通常不需要(已集成)
2026-08-28 15:58:48
194
原创 Dart FFI 完全指南:从入门到实战
Dart FFI 实战指南摘要 Dart FFI 是 Dart 与 C/C++ 互操作的核心工具,特别适合 Flutter 中需要高性能计算或复用原生代码的场景。本文从基础概念到实战应用,系统讲解: 核心机制:通过类型映射实现 Dart 调用 C 函数,需注意 C++ 需用 extern "C" 导出符号 两种集成方式: 源码集成(适合自有代码) 预编译库(适合第三方库) 完整开发流程: 编写 C/C++ 代码并编译为动态库 使用 DynamicLibrary 加载库 通过 lookup+asFunctio
2026-08-21 11:23:23
220
原创 Flutter BLE高频数据处理方案对比
本文对比了Flutter BLE开发中处理高频数据(如8kHz心电设备)的三种方案:Dart解析、透传原生层处理、FFI直接调用C++。通过性能、开发成本、维护性和调试难度四个维度的分析,指出方案三(FFI)在高频场景下最优,具备零拷贝、无线程切换优势;方案一适合低频简单场景;方案二因多级拷贝和双端维护成本,不推荐高频使用。最终建议根据数据频率和团队技术栈选择:低频选Dart方案,高频医疗设备优先FFI方案,已有原生SDK可考虑透传方案但需承担性能损耗。
2026-08-21 10:37:54
379
原创 技术博客模板与排版规范
本文提供了技术博客写作的标准化模板,包含标题层级、文本样式、排版格式、内容组织等规范。重点包括:标题不超过四级,代码块须指定语言,中英文间加空格,遵循"概述-概念-展开-注意-总结"结构,代码示例要精简可运行,语言表达需规范统一。适用于各类技术主题文章,并附有质量检查清单和示例。通过标准化排版和内容组织,确保技术博客清晰易读、结构一致。
2026-08-14 10:28:43
299
原创 flutter StreamController 完全使用指南
Dart StreamController 使用摘要 StreamController 是 Dart 中管理异步数据流的核心工具,包含 stream(数据出口)和 sink(数据入口)两部分。它分为单订阅流(单一消费者)和广播流(多消费者)两种类型。 关键点: 单订阅流适合文件读取等单一消费者场景 广播流适合传感器数据等多组件响应场景 通过 sink 可限制外部操作权限 使用完成后必须调用 close 避免内存泄漏 典型应用场景包括: UI事件处理(广播流) 实时数据流(广播流) 单次数据加载(单订阅流)
2026-08-14 10:17:29
396
原创 Android USB ADB 调试方案完全解析
Android ADB调试方案全面解析 摘要: 本文深入解析Android ADB调试方案,重点介绍ADB的三层架构(客户端-服务端-守护进程)及其工作原理。详细阐述了USB连接建立流程,包括物理连接、协议握手和认证机制。特别探讨了ADB端口转发技术,提供了一套完整的APP内实现ADB TCP服务的实践方案,包括服务端实现、消息边界协议设计和通信管理。文章还涵盖了ADB版本演进历史和现代特性(如无线调试),为开发者提供了从基础到高级的ADB调试技术指南,帮助解决实际开发中的调试挑战。
2026-08-04 14:52:58
486
原创 iOS 开发证书与描述文件创建指南
本文详细介绍了iOS开发中证书(Certificate)和描述文件(Provisioning Profile)的创建流程。证书用于验证开发者身份,分为开发证书和发布证书两种;描述文件则规定了应用可运行的设备和功能。文章从准备工作开始,逐步讲解如何生成CSR文件、创建证书、添加测试设备,以及最终创建描述文件并打包IPA文件。同时还解释了各种文件格式(.cer、.mobileprovision等)及其关系,并提供了常见问题解答。通过这份指南,iOS开发者可以系统地掌握应用打包和分发的核心流程。
2026-07-31 15:10:58
73
原创 Android Open Accessory (AOA) 协议完全解析
文章摘要: Android Open Accessory (AOA) 协议是Google制定的标准,允许Android设备通过USB与外部配件交互,解决早期Android设备无法主动控制外设的问题。核心机制是通过角色反转,让外部配件充当USB主机,Android设备作为从机。协议支持两种模式:Host Mode(Android为主机)和Accessory Mode(外部配件为主机),在供电、控制权、API使用等方面存在差异。AOA有两个版本:AOAv1支持基础通信,AOAv2新增音频流和HID功能。协议握手
2026-07-29 17:40:14
261
原创 2、iOS APNs证书获取与配置完全指南
本文提供了从生成APNs证书到配置友盟+推送功能的完整指南,包含四个关键步骤:生成CSR文件、创建APNs证书、导出.p12文件以及上传至友盟后台。针对每个环节都给出了详细的操作说明和常见问题解答,特别强调了开发环境和生产环境证书的区别及处理方式。文章还总结了常见错误速查表,帮助开发者快速排查问题。通过这份指南,即使是首次接触iOS推送的开发者也能顺利完成APNs证书的配置工作。
2026-07-27 16:28:17
83
原创 Flutter Pigeon 跨端通信实战指南
本文介绍了在Flutter混合开发中使用Pigeon进行跨端通信的实践指南,特别适用于医疗级硬件SDK开发。Pigeon通过"契约优先"的方式,自动生成双端通信代码,解决了传统MethodChannel的字符串匹配和类型安全问题。文章详细阐述了从接口定义、代码生成到项目结构的完整流程,包括配置开发依赖、定义通信协议、执行代码生成及原生端实现等关键步骤。同时提供了标准项目结构设计和核心注意事项,强调禁止修改生成文件、保持接口定义文件纯粹性以及处理高频数据流等要点。Pigeon的强类型机制为医疗级SDK提供了安
2026-07-22 11:07:41
225
原创 iOS 开发中的 Storyboard 与 XIB:从入门到实践
本文系统介绍了iOS开发中Storyboard与XIB的核心概念、详细对比和使用方法。Storyboard适合快速原型开发,能直观展示页面跳转关系,但团队协作时易冲突;XIB适合封装可复用控件,文件独立便于维护。文章从工作流程、代码示例到常见问题解决方案进行了详细阐述,并给出了在不同场景下的技术选型建议,如个人项目推荐Storyboard,大型团队项目推荐XIB加纯代码混合开发。最后指出大型项目可以使用多个Storyboard进行模块化开发。
2026-07-17 17:35:28
87
原创 4、iOS 应用分发指南:TestFlight vs Ad Hoc
对于新手 iOS 开发者来说,将开发好的 App 发给测试人员是必须掌握的一步。TestFlight 和 Ad Hoc 是两种最主流的内测分发方式,但它们的适用场景、操作流程和限制各不相同。
2026-07-17 13:53:56
89
原创 外部体检系统对接技术方案
本项目旨在打通我方体检服务平台与各类外部体检机构信息系统(HIS/RIS/PACS)之间的数据壁垒,实现跨系统的患者信息自动同步与体检结果/报告的安全回传,最终构建完整的医疗业务闭环。相比之下,基于 RESTful 架构的 HTTP API 具备显著优势:支持双向通信、数据结构丰富(JSON)、易于调试与扩展,是现代互联网医疗应用对接的首选方案。:作为统一的“桥梁”与“适配器”,集中处理所有外部对接工作,屏蔽不同体检机构系统的底层差异,向 APP 提供标准化的内部 API。HTTP 用 GET/POST;
2026-07-17 13:20:07
244
转载 iOS Architecture Cocoa Touch Layer
Cocoa Touch Layer 是 iOS 操作系统的顶层架构,专门为开发者提供构建应用程序的高层次框架。它主要负责用户交互界面(UI)、事件处理、多任务处理和系统服务的整合。作为 iOS 应用开发的核心,Cocoa Touch Layer 封装了许多便捷的工具和 API,使开发者能够快速创建直观、高性能的应用程序。在逆向开发中,深入理解 Cocoa Touch Layer 的架构和工作原理,是分析应用功能、界面交互及事件流的基础。
2026-07-16 14:55:37
20
原创 iOS开发之UIViewController使用总结
摘要 本文是iOS开发中UIViewController的权威指南,详细讲解了其核心概念和实际应用。作为iOS界面管理的"总导演",UIViewController负责视图管理、用户交互处理和页面导航。文章系统介绍了UIViewController的文件结构、生命周期(包括加载、显示、消失和销毁各阶段的关键方法)、三种视图加载方式(Storyboard、XIB和纯代码),以及页面跳转的两种主要方式(Push导航和模态展示)。最后还介绍了高级应用场景中的容器控制器与子控制器技术,帮助开发者构建更复杂的界面架构
2026-07-16 14:14:15
67
原创 微信开发生态解析与整理
本文系统梳理了微信四大核心平台(公众平台、开放平台、开发者平台、支付平台)的定位与协作关系。公众平台侧重内容运营,开放平台提供UnionID统一身份体系,开发者平台整合为统一开发工作台,支付平台处理资金结算。随着功能迁移,开发者平台正逐步接管开放平台的部分职能,形成更高效的一站式开发生态。文章通过流程图解和典型场景说明各平台协作方式,帮助开发者正确选择平台完成业务闭环,实现从账号注册到支付接入的全流程管理。
2026-07-15 14:18:38
334
原创 Objective-C 之 KVC 详解
本文深入解析iOS开发中的KVC(Key-Value Coding)技术,从其基本概念到高级应用。KVC通过字符串间接访问对象属性,支持动态读写、集合运算等强大功能。文章详细剖析了KVC的底层搜索机制,包括设值和取值的具体流程,并介绍了集合运算符这一实用特性。此外,还探讨了KVC与KVO的关系,以及在实际开发中如何利用KVC实现字典转模型的最佳实践,包括处理字段映射和类型转换等常见问题。通过本文,开发者可以全面掌握KVC的核心原理和实用技巧。
2026-07-07 21:15:53
342
原创 Objective-C 之 Foundation框架 详解
本文系统介绍iOS开发中的基础框架Foundation,它是所有Objective-C应用程序的基石。主要内容包括: Foundation框架定位:作为Cocoa/Cocoa Touch的基础层,提供字符串、集合、日期等核心功能,与UI框架分离 根类NSObject:所有OC类的基类,定义对象创建、内存管理等基本行为,支持运行时查询和方法调用 值对象类型: NSString处理字符串操作(创建、比较、分割等) NSNumber封装基本数值类型 NSDate处理日期时间 NSValue包装任意C数据类型 集合
2026-07-06 21:43:27
239
原创 Objective-C 之 Block 详解
iOS开发必备:Objective-C Block完全指南 本文全面讲解了Objective-C中的Block核心知识点,包括: Block本质:Block是带有自动变量值的匿名函数对象,实现了闭包功能,可捕获上下文变量。 语法详解: 基础语法与声明方式 使用typedef简化复杂Block类型 Block作为方法参数和属性的使用 底层原理: Block的三种类型(全局/栈/堆Block) 变量捕获机制(值捕获、引用捕获、指针捕获) 拷贝操作的必要性和应用场景 内存管理: 循环引用问题及解决方案 __wea
2026-07-06 21:17:40
235
原创 OC中协议、分类、扩展:核心对比与总结
本文系统对比了Objective-C中协议、分类和扩展三大特性的核心区别。协议是定义行为规范的接口声明,分类是为已有类添加全局方法的机制,扩展则是用于封装私有成员的匿名分类。三者分别解决解耦、功能扩展和封装隐藏的问题,在加载时机、作用范围、能力维度等方面存在显著差异。协议强调规范定义,分类侧重功能扩展,扩展注重实现隐藏,三者各司其职且不可替代。合理运用这些特性能够在灵活性、扩展性和封装性之间取得平衡,提升代码质量。
2026-07-06 20:51:58
256
原创 Objective-C 之 Protocol 详解
本文全面解析了Objective-C协议的核心概念与应用,帮助开发者编写更灵活解耦的代码。主要内容包括: 协议本质:定义方法签名但不提供实现,用于代码解耦、多继承效果和代理模式 基本语法:协议声明(@required/@optional)、遵守协议和实现方法 高级特性:协议继承、属性声明、作为类型使用 方法检查:respondsToSelector:和conformsToProtocol:的使用 典型应用:代理模式、数据源模式和组件通信的实现 最佳实践:命名规范、合理使用@optional、弱引用避免循环引
2026-07-06 20:45:30
242
原创 Objective-C 之 Extension 详解
本文全面介绍了Objective-C中的扩展(Extension)特性,包括其定义、核心能力和应用场景。扩展是一种匿名分类,通常定义在.m文件中,用于添加私有属性、方法和重写属性特性。相比分类(Category),扩展具有编译期绑定、自动合成属性等优势,是实现真正私有功能的关键工具。文章详细对比了扩展与分类的区别,并提供了封装内部状态、实现辅助方法、协议私有实现等典型应用场景。最后总结了使用扩展的最佳实践,帮助开发者更好地利用这一特性提升代码封装性和可维护性。
2026-07-03 17:27:53
321
原创 Objective-C 之 Category 详解
这篇文章深入解析了Objective-C的Category特性,主要涵盖以下内容: Category基本概念:介绍Category的作用是在不修改原类代码的情况下扩展类方法,对比继承方式的优缺点。 核心应用场景:包括扩展现有类、分解庞大类、声明私有方法和实现非正式协议。 创建方法:详细说明通过Xcode模板和手动创建Category的步骤,包括文件命名规范和实现示例。 功能限制:明确Category可以添加方法、协议和属性声明,但不能添加实例变量。 属性扩展方案:介绍使用关联对象(Associated Ob
2026-07-03 17:19:52
321
原创 iOS 开发中的两大“隔离术”
iOS开发中常遇到两个关键隔离问题:1. 使用void*指针隔离C++依赖,通过Pimpl模式在头文件中隐藏C++类型,避免污染OC代码,提升编译效率;2. 利用宏条件编译实现环境隔离,如通过#ifdef DEBUG区分开发与生产环境,灵活控制日志输出等功能。这两种技术分别解决了跨语言混编和环境差异的隔离需求,是iOS开发中的重要实践方案。
2026-07-02 15:55:48
241
原创 OC中的格式说明符(Format Specifiers)
在 Objective-C 中,%@%d这类符号是格式说明符,用于在NSLog等方法中指定数据的输出格式。
2026-07-02 15:30:50
199
原创 Objective-C 与 Swift 互调完整教程
方向操作Swift → 调用 OC在 Bridging-Header.h 中#importOC 头文件OC → 调用 SwiftSwift 类加@objc,OC 中#import "项目名-Swift.h"方向操作Swift → 调用 OC在 Bridging-Header.h 中#importOC 头文件OC → 调用 SwiftSwift 类加@objc,OC 中#import "项目名-Swift.h"
2026-07-02 11:12:48
272
原创 iOS OC 项目集成 C++ 算法库完整指南
│ 集成流程一图流 ││ ││ 1. 写 C++ 算法 → Calculator.hpp + Calculator.cpp ││ ↓ ││ 2. 写 OC 桥接类 → CalculatorBridge.h (纯 OC 接口) ││ ↓ ││ 3. 实现桥接 .mm → CalculatorBridge.mm ││ - 持有 C++ 对象指针 `_cppCalculator` ││ - OC 方法里调用 `_cppCalculator->方法()` │。
2026-06-25 09:43:55
218
原创 iOS 原生 (Objective-C) 项目里集成 C++ 算法库
在 iOS 原生 (Objective-C) 项目里集成 C++ 算法库,核心思路和 Android 的 JNI 类似,但实现方式更轻量。主要利用这个“混编桥接层”来完成,本质上是给 C++ 代码套上一层 Objective-C 的“壳”。
2026-06-25 09:38:01
34
原创 加入Apple Developer Program 避坑指南
先选对账户类型(个人/公司),个人账户后期转不了公司。准备一台iPhone来完成注册(Mac mini没有摄像头)。一个身份证只能用一个Apple ID注册,失败也别换号重试。地址照抄身份证,一个字都不能改。遇到问题打苹果客服,别自己瞎换设备。付款成功后等邮件,收到"Welcome"才算成功。记得取消自动续费,免得次年莫名其妙被扣688。祝你这次注册一次过关!
2026-06-12 09:49:55
270
原创 ios 常用 Info.plist 隐私 Key 速查
👉 https://developer.apple.com/documentation/bundleresources/information_property_list按字母顺序列出所有 Key、说明、可用值。任何第三方的清单都可能有遗漏,认准这个。👉 https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html老版本但有
2026-06-11 15:45:07
19
原创 ios之XCFramework vs .framework 全面对比
XCFramework 是 .framework 的现代化替代品,专为解决多平台、多架构的打包问题而设计。除非你需要兼容 iOS 8,否则都应该用 XCFramework。如果你需要我帮你把针对你那个蓝牙 SDK 的打包脚本写完整(包括头文件暴露、资源文件打包等),可以直接告诉我。
2026-06-11 15:23:28
26
原创 ios之.framework
你的团队 客户团队写 SDK 源码 (.h 公开 + .mm 保密) 用 SDK 集成│ ▲▼ │内网 git 仓库 ││ │▼ │CI 打包:编译 → .xcframework (二进制) ││ │▼ │内网 Spec 仓库 │客户拿到:• .h 公开接口 ✓• .m/.mm 实现 ✗ (被编译进二进制)• 原始 ECG 数据 ✓。
2026-06-11 15:22:37
14
ksoap2-android-assembly-3.6.2-jar-with-dependencies.jar
2017-02-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅