3 条路线把 FAP 插件装进 Flipper Zero Unleashed
【免费下载链接】unleashed-firmwareFlipper Zero Unleashed Firmware项目地址: https://gitcode.com/GitHub_Trending/un/unleashed-firmware
Flipper Zero Unleashed 是 Flipper Zero 的开源固件,它和官方固件最大的区别在于支持以 FAP(Flipper App Package,应用包)格式安装第三方应用:把一个 .fap 文件放进 SD 卡,设备就多了新能力,不用重刷固件。读完这篇,你能从零装好一个 FAP 插件、用 fbt 一条命令部署自己的应用,跑不起来时也知道往哪儿查。
下图展示的是 Flipper Zero Unleashed 设备上跑一个自写应用的效果,也就是我们这条"装上去、能打开"闭环的终点。
📦 先跑通闭环:把第一个 FAP 放进 SD 卡
安装前确认固件版本和 SD 卡目录
动手前花 30 秒确认两件事:
- 固件 API 版本:在设备端打开
设置 > 系统 > 关于,记下"API 版本"。FAP 的主版本号必须和固件一致,否则 Loader(负责把应用读进内存执行的系统组件)会直接拒绝运行。 - SD 卡目录:在 SD 卡根目录建一个
apps目录,里面可以再按功能分子目录,比如apps/遥控、apps/游戏。FAP 文件放apps或其任意子目录里都可以。
把 FAP 文件放进 SD 卡 apps 目录
手里只有 SD 卡的时候,走这条最省事:从可信来源下载 .fap 文件,复制到apps目录,安全弹出,插回设备,重启。开机后新应用会出现在主菜单"应用"分组里。全程不碰编译,第一次操作的人五分钟也能走完。
换条路走:按场景选安装方式
我们按场景分一下,你挑适合自己的那条。
习惯敲命令的时候:用 fbt 一条命令推到设备
固件源码已经 clone 到本地、平时爱敲命令的话,fbt(项目自带的构建部署工具)最快。把应用源码放进applications_user目录,然后:
# 编译并通过 USB 直接推到设备 ./fbt launch APPSRC=applications_user/hello_world这条命令会解析清单里的依赖、编译出 FAP,再通过 USB 推到设备上立刻运行。开发阶段改一行代码再跑一次,就是大多数插件开发者用的迭代循环。构建与部署参数的细节见 FAP 安装和管理指南。
设备已联网的时候:走应用商店
设备装了 WiFi 模块并能正常联网时,直接在设备上打开应用 > 应用商店,按分类浏览,点"安装",下载和安装都由系统完成。适合人在外面、想快速补一个工具的场景,不用电脑参与。
🩹 装完跑不起来时的自救
别急,九成"跑不起来"都落在下面三种症状里,每条给一步验证:
症状:启动时报"API 版本不匹配"原因:FAP 主版本号和固件主版本号不一致。 验证:去设置 > 系统 > 关于核对固件 API 版本,和清单里的版本字段比对;自己编译的话,把版本改成一致再重新构建。
症状:apps 目录里有文件,应用列表却看不到原因:扩展名不是.fap,或者应用列表没刷新。 验证:确认文件扩展名,然后重启一次设备,强制重建应用列表。
症状:应用闪退,或提示内存不足原因:FAP 要整体加载进 RAM,可用堆比内置应用更小,栈分配过小还会直接溢出崩溃。 验证:用 CLI(命令行)跑top和free看内存占用,再把清单里stack_size调大试试是否还崩。
往深走一步:做一个自己的 FAP
最小清单加一个 C 入口
一个 FAP 应用就两部分:application.fam清单(声明应用 ID、入口函数、依赖、版本)和 C 源码。最小清单长这样:
App( appid="hello_world", apptype=FlipperAppType.EXTERNAL, name="你好世界", entry_point="hello_world_app", stack_size=1024, )C 侧就是一个入口函数:打开 GUI 记录、注册带绘制回调的 view_port(负责往屏幕上画内容的组件)、等用户退出事件。完整写法参考应用清单规范和仓库里自带的示例应用。编译后跑./fbt fap_hello_world,产物会落在构建目录的.extapps里,复制到 SD 卡即可。
嫌 C 重的话:用 JS SDK 写
如果 C 写起来费劲,Unleashed 的 JS SDK 让你几行脚本就能上手:把.js放进 SD 卡apps/Scripts目录,从菜单"脚本"里运行,或者在 CLI 里直接js 脚本名。写法细节看 JS 开发指南。
这张图是 JS SDK 开发环境里的代码补全效果,输入时就能看到可用 API,fbt 部署应用前写代码的体验会舒服很多。
值得装的 3 个插件
不用全装,挑你真用得上的:
- 红外遥控码库扩展 —— 内置遥控库覆盖面有限,装码库扩展是提升最直观的一步
- SubGHz 遥控插件 —— 要控制车库门、卷帘门、老式遥控器时,它覆盖大部分低频场景
- 经典小游戏合集 —— 摸鱼时有用,顺带还能当设备内存的负载测试
读完之后先做的一件事
第一件事:找一个可信来源的 FAP 放进 SD 卡apps目录,重启看它出现在不在菜单里,这是最快建立手感的路。之后 clone 固件源码,用 fbt 部署一个自己的 hello world,你就正式进圈了。中间任何一步崩了,回到上面自救一节逐条对症状,别急着全盘推翻。
【免费下载链接】unleashed-firmwareFlipper Zero Unleashed Firmware项目地址: https://gitcode.com/GitHub_Trending/un/unleashed-firmware
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考