
Flipper Zero FAP 应用包完全指南安装、使用与构建自定义应用【免费下载链接】FlipperPlayground (and dump) of stuff I make or modify for the Flipper Zero项目地址: https://gitcode.com/GitHub_Trending/fl/Flipper导读Flipper Zero 的 FAPFlipper Application Package机制让你可以把第三方应用以.fap文件的形式放入 SD 卡随用随加载无需重新刷写固件。本文以 Applications/ReadMe.md 为核心骨架结合本仓库 Applications 目录下的真实组织方式系统讲解 FAP 的由来与固件兼容性、SD 卡安装与菜单加载的完整步骤、非官方 FAP 商店的使用以及从零构建自己的 FAP 所需的工具链与学习资源。读完本文你将能独立完成「挑选 FAP → 安装到设备 → 正确运行」以及「配置 uFBT 工具链 → 编译并侧载自己的第一个应用」的完整闭环。什么是 FAP把插件从固件里解放出来FAP 是 Flipper Zero 官方固件团队Anna/hedger引入的「从 SD 卡加载插件应用」机制的产物。早期第三方功能必须编译进固件本体每次添加功能都要重新刷机FAP 机制落地后官方团队随之发布了一批预编译好的插件包社区固件如 Unleashed、RogueMaster也在此基础上做了大量扩展。需要特别强调的是FAP 文件必须针对你所使用的固件版本编译RogueMaster 与 Unleashed 的 FAP 文件可以互换使用见 Custom (UL, RM)/ReadMe.md) 中的说明它们与官方Official固件不通用因为各固件对外暴露的 API 存在差异。这正是本仓库把 FAP 按固件分目录存放的根本原因。仓库中的应用目录结构本仓库 Applications 目录按固件与来源做了清晰分区目录内容说明Applications/Custom (UL, RM)/ReadMe.md)为 Unleashed / RogueMaster 编译的社区 FAP按功能分子目录文件可在 RM 与 UL 之间互换Applications/Official官方固件专用 FAP目前 FAP 文件已移除官方推荐改用官方应用商店Applications/UberGuidoZ仓库作者自研的两个应用含完整源码与使用文档适合作为学习样例在 RogueMaster/RogueMaster/README.md) 与 Unleashed/Unleashed/ReadMe.md) 目录内FAP 按功能组织为Bluetooth、GPIO、Games、Infrared、NFC、RFID、Sub-GHz、Tools、USB、iButton、Scripts、Media等子目录RogueMaster 另含Main、Settings目录共计数百个.fap文件。这种「按功能分目录」的组织方式与设备端apps目录的呈现逻辑一一对应。如何安装并使用 FAP第一步把 FAP 文件放进 SD 卡下载你需要的.fap文件在 SD 卡上创建名为apps的文件夹把.fap文件放入apps可以像仓库一样按功能建立子文件夹也可以按自己的习惯自由组织、改名、新建文件夹——设备端完全跟随你的目录结构显示。第二步确认固件版本确保设备运行的是最新版本的固件大多数场景下建议使用 dev 分支固件选择与差异可参考仓库的 Firmware_Options 文档——其中列出了官方Official、Unleashed、RogueMaster、Momentum 等固件的定位差异也标注了 MuddleBox、Xtreme、v1nc、Wetox 等已停更/归档的固件选择时注意避开。第三步通过设备菜单加载在设备主界面找到Applications应用菜单项按中心键OK进入即可看到你在apps目录下建立的文件夹结构导航到目标应用再次按中心键启动需要退出或切换应用时按BACK键即可。以仓库作者自研的 GPIO Logic Analyzer 为例其入口位于Apps GPIO GPIO Logic Analyzer启动后显示应用标题界面进入后即开始实时波形采集详见后文「实战示例」运行画面如下固件兼容性详解理解「哪个 FAP 能在哪个固件上跑」是使用本仓库的前提Unleashed / RogueMaster 之间可互换二者的 API 保持兼容仓库中Custom (UL, RM)目录下所有文件对这两个固件通用与官方固件不通用官方固件的 API 与社区固件存在差异同样的源码需要分别编译官方固件有额外的运行时限制Applications/Official/ReadMe.md 特别指出部分使用音频的应用在官方固件上无法正常工作原因是官方引入了新的音频访问模式——如果你在官方固件上遇到音频类 FAP 无声或崩溃这是已知的兼容性边界并非文件损坏。此外官方固件目录中的 FAP 文件目前已被移除作者明确建议官方固件用户改用官方应用商店移动端 Flipper App 内或社区商店 FlipC.org 获取应用仓库内仅保留历史源码source-OLDER目录。非官方 FAP 商店FlipC.org如果你不想手动下载单个文件仓库主文档重点推荐了社区非官方商店FlipC.org由 Aleksey Korolev 开发它提供了一种快速便捷的 FAP 安装方式在网页端选择你的固件与设备即可生成并安装 FAP 文件。这是手动拷贝 SD 卡之外的第二条主流安装路径尤其适合批量更新应用。实战示例安装并运行 GPIO Logic Analyzer仓库 Applications/UberGuidoZ/gpio_logic_analyzer 是一个完整的 FAP 实战样本一个监视 Flipper Zero 18-pin 排针上全部 8 个 GPIO 引脚的逻辑分析仪在 128x64 OLED 上绘制实时滚动波形并把每个采样写入 SD 卡上的 CSV 日志。它的 Quick Start 流程完整复现了上文「安装 → 菜单加载 → 运行」三步从Release目录获取.fap文件或自行编译设备端进入Apps GPIO GPIO Logic Analyzer先用Instructions查看电压限制与按键映射选择Start Analyzer开始采集CSV 日志自动写入/ext/gpio_analyzer/。运行界面中每行对应一个 GPIO 引脚A7/A6/A4/B3/B2/C3/C1/C0波形显示最近 104 个采样并随新采样左移最右列显示当前引脚电平H/L波形中的竖线标记电平跳变沿标题栏100Hz*中的*表示 CSV 日志正在写入。按键映射为OK 短按暂停/继续采集、OK 长按清空波形、UP/DOWN 调节采样率、BACK 停止并退出。该应用的 CSV 日志格式写入/ext/gpio_analyzer/gla_YYYYMMDD_HHMMSS.csv为sample,A7,A6,A4,B3,B2,C3,C1,C0 0,1,0,1,0,0,1,0,1 1,1,0,1,0,0,1,0,0 2,0,0,1,0,0,1,1,0其中sample为自本次会话起单调递增的采样序号各引脚列1表示高电平3.3V、0表示低电平列顺序与屏幕行顺序一致CRLF 行尾保证 Excel/LibreOffice 正常打开。如果 SD 卡缺失或目录创建失败应用会无日志继续运行标题无*并闪烁错误 LED。采样率有 10 Hz / 50 Hz / 100 Hz / 200 Hz / 500 Hz 五档基于 FreeRTOS 定时器实现作者明确提示高采样率下 Flipper OS 调度与 SD 写入延迟会引入抖动该工具定位是定性信号检查与基础协议调试精确时序分析应使用专用逻辑分析仪。构建自己的 FAP工具链与学习路径主文档为想要「从消费 FAP 转向生产 FAP」的开发者列出了完整的构建资源体系可按以下路径循序渐进1. 官方应用开发文档官方固件仓库的documentation/AppsOnSDCard.md是 FAP 机制的权威说明涵盖应用清单manifest、构建系统接入与侧载流程是所有新手的第一站。2. uFBTmicro Flipper Build TooluFBT 是官方推出的独立构建工具无需克隆整个固件源码树即可编译单个应用是当前最推荐的开发方式。以仓库内 gpio_logic_analyzer 的构建说明为例pip install ufbt # 安装 ufbt仅需一次 ufbt # 仅构建产物为 build/.../gpio_logic_analyzer.fap ufbt launch # 构建并通过 USB 侧载到设备如果你选择在完整固件源码树内构建则将应用目录放入applications_user/后执行./fbt fap_gpio_logic_analyzer3. 插件开发教程与 Hello World 示例主文档整理了多份社区教程与入门样例均围绕「最小 FAP 长什么样」展开DroomOne 的 Flipper Plugin Tutorial从零讲解插件骨架giolaq 的 Hello World 博客及配套仓库以「Hello World」应用串起入口函数、UI 与构建流程csBlueChip 的 plugin howto面向插件机制细节的深入教程Hello World 示例集合包括 zmactep、ASoldo、mervburger 的 C 语言实现以及 baakeydow 提供的 Rust 实现对 Rust 开发者尤其有价值。4. 参考真实应用的源码结构与其从空文件开始不如直接阅读仓库内带完整源码的 FAP 项目。gpio_logic_analyzer 的文件结构就是一个典型的最小可编译 FAP 布局gpio_logic_analyzer/ application.fam -- ufbt 应用清单manifest gpio_analyzer.h -- 共享类型、常量与应用结构体 gpio_analyzer_app.c -- 入口点、内存分配/释放、场景处理器表 scene_menu.c -- 主菜单Submenu 控件 scene_analyzer.c -- GPIO 采集、波形渲染、CSV 日志 scene_instructions.c -- 4 页屏幕参考LEFT/RIGHT 翻页 scene_about.c -- 关于页面其中application.fam是 uFBT 识别的应用清单gpio_analyzer_app.c定义场景scene处理器表各scene_*.c对应一个界面状态——这种「场景机 控件」架构是 Flipper 应用的标准范式。自定义应用图标只需用同名 10x10 PNG 覆盖即可。常见问题与注意事项音频应用在官方固件失效因官方引入新的音频访问模式见 Applications/Official/ReadMe.mdFAP 文件缺失或过时可关注社区镜像仓库如 kyhwana、grnch 维护的最新应用集或直接使用 FlipC.org 获取最新版本Unleashed 内置应用Custom (UL, RM)/ReadMe.md) 明确不含 Unleashed 固件自带的「集成/捆绑」FAP若需要可从 Unleashed 官方 Release 的 ZIP 中提取resources.tar里的apps文件夹给应用加分为验证你的 FAP 适配性务必在目标固件的最新 dev 版本上测试而不是只依赖编译通过。结语FAP 机制把 Flipper Zero 从「出厂功能固定的设备」变成了「可自由扩展的平台」。掌握本文介绍的目录组织、安装流程、固件兼容边界与 uFBT 构建链路后你既可以高效地在设备上部署社区应用也能迈出开发自己第一个 FAP 的第一步——本仓库的 Applications/UberGuidoZ 自研应用与 Custom (UL, RM)/ReadMe.md) 下的数百个社区 FAP就是最好的参考样本。【免费下载链接】FlipperPlayground (and dump) of stuff I make or modify for the Flipper Zero项目地址: https://gitcode.com/GitHub_Trending/fl/Flipper创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考