news 2026/10/24 6:31:54

零成本物理防沉迷:如何用可打印的二维码在Foqos里锁定和解锁App

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
零成本物理防沉迷:如何用可打印的二维码在Foqos里锁定和解锁App

【免费下载链接】foqos

Foqos allows you to lock apps behind the tap of a NFC tag or scan of a QR code. Free and open source alternative to Brick, Opal, ScreenZen, Unpluq, Scrolly, Blok and more!

项目地址:https://gitcode.com/gh_mirrors/fo/foqos
点击查看免费下载

Foqos 是一款免费开源的 iPhone App 防沉迷锁定工具,让你用可打印的二维码(或条形码)就能物理地启动和停止 App 锁定会话。相比购买专用硬件,一张 A4 纸 + 手机摄像头就是零成本 App 锁定器。本文带你从零搭建:生成二维码、打印上墙、扫码锁定/解锁 App,附防误解锁的 Strict 模式技巧。

Foqos 二维码锁定App策略贴纸

一、为什么选择二维码:零成本物理防沉迷

传统的 App 锁定应用(如 Brick、Opal)往往依赖专用硬件或订阅费。Foqos 的思路是:把"开始专注/停止专注"变成一个物理动作。

  • 🆓零成本:二维码由 Foqos 在本地生成,打印或截图都免费,无需购买任何硬件
  • 📄可打印:把二维码贴在书桌、床头柜或健身房柜门上,走到位置扫一下就锁定
  • 📷免开 App:二维码指向深链接https://foqos.app/profile/<PROFILE_UUID>,扫描后直接唤起 Foqos 并切换状态
  • 🔒隐私优先:数据全部留在本机,无账号、无云端同步、无广告
  • 🛡️免费开源:MIT 协议,代码可审查,是 Brick、Opal、Blok、Unpluq 的免费替代方案

扫码逻辑见 QRCodeScanner.swift:内置扫码器不仅支持二维码,还兼容 EAN、Code128 等条形码,并带有手电筒和变焦按钮,暗处打印件也能扫。

二、四步打印你的专属锁定二维码

前提:已从 App Store 安装 Foqos,并授予屏幕使用时间(Screen Time)权限。

  1. 创建锁定档案(Profile):为每个场景建一个档案,比如"专注工作""睡前禁刷",勾选要锁定的 App 或网站域名
  2. 选择二维码策略:编辑档案时,在策略(Strategy)中挑选以 QR/Barcode 开头的方案(见下一节)
  3. 生成二维码:进入档案编辑页 → 右上角「...」菜单 →Generate QR code,Foqos 会即时生成一张 250×250 的高清二维码图
  4. 分享或打印:点击Share QR code即可导出图片——发到打印机打印上墙,或截图后贴在另一台设备的桌面/便签 App 里随时展示

二维码生成逻辑在 QRCodeView.swift,深链接格式定义于 BlockedProfiles+App.swift。

💡 打印小技巧:二维码不要缩得太小,建议短边 ≥ 5cm,四周保留白边,避免彩色背景干扰识读。

三、四种二维码策略,总有一款适合你

Foqos 在 Strategies 目录中内置了多套 QR 方案,按"开始/停止"方式组合:

策略开始方式停止方式适合场景
QR Code/Barcode扫码启动扫同一个码停止贴墙一键开关,最经典
QR/Barcode + ManualApp 内启动扫任意二维码停止懒得扫码开始,想随时用码"松绑"
QR/Barcode + Timer扫码 + 选时长计时结束自动停,或扫码提前停番茄钟式固定专注
Soft Unblock + QR扫码启动扫码停止;期间可"软解锁"短时间使用严格模式 + 少量弹性

1. 基础版:同一个码开与关QRCodeBlockingStrategy.swift 的实现是"toggle"模式:档案未激活时扫码启动锁定,激活中扫同一个码即停止。注意——停止时必须扫启动时用的那个码,扫别的码会被拒绝(提示You must scan the original QR code to stop focus)。

2. 计时版:到点自动解锁

Foqos 二维码加计时器锁定策略.png)

QRTimerBlockingStrategy.swift 让你先选时长(如 45 分钟),锁定到点自动结束;期间若想提前结束,扫任意二维码即可。锁屏的 Live Activity 会实时显示剩余时间,不用开 App 也知道进度。

3. 手动启动 + 扫码停止

QRManualBlockingStrategy.swift 适合"开始容易、停止靠物理仪式":在 App 里点一下启动,结束后必须走到二维码前(比如走到打印架旁)扫码才能解锁,用空间距离对抗冲动。

4. 软解锁版:锁不死,但给不了"放肆"

Foqos 软解锁加二维码策略

QRSoftUnblockBlockingStrategy.swift 保持锁定状态,但允许配置几次"短开"(如每次 5 分钟),额度用完继续锁,最后扫指定二维码结束会话。适合学习期间需要偶尔查资料的用户。

四、Strict 物理解锁:只认"钥匙"二维码

默认情况下,部分策略允许扫任意二维码停止会话。如果你怕家人/室友随手扫个微信码就把你的专注给解除了,可以开启Strict Unlocks:

  1. 编辑档案 → Physical Unlock(物理解锁)设置
  2. 在 QR/Barcode 一栏点Add Code,把"钥匙二维码"扫进去(支持任意已有二维码或条码)
  3. 保存后,只有这张被批准的码才能解锁该档案,其他码一律被拒

配置界面实现在 BlockedProfilePhysicalUnblockSelector.swift,校验逻辑见 QRCodeBlockingStrategy.swift:未获授权的码会提示This QR code is not allowed to unblock this profile。

典型玩法:打印两张码——"启动码"贴书桌,"钥匙码"锁进抽屉或贴在家门背面。想结束专注?先物理移动到钥匙所在处,防沉迷的仪式感拉满。

五、进阶:更多物理玩法

  • 🏷️NFC 混搭:更喜欢贴纸手感的话,Foqos 也支持 NFC 标签(NTAG213 即可),还能用官方 3D 打印的 NFC 砖块和钥匙扣外壳
  • ⏰快捷指令自动化:配合 iOS Shortcuts 的 NFC 自动化,贴墙标签一碰自动切换档案
  • 📊复盘数据:每次扫码会话都会记录时长与次数,Insights 页面可看周报、月报和专注热力图,扫码次数多了,习惯自然就养成了
  • 🖨️多位置部署:同一个档案的二维码可以打印多份贴在多个位置,因为启动/停止都认码不认纸

六、常见问题(FAQ)

Q:不打开 Foqos 能扫码吗?能。二维码是通用深链接,系统相机会直接唤起 Foqos 完成切换,全程不用手动找 App。

Q:把 Foqos 卸载/重装后,旧二维码还有效吗?码里编码的是档案 UUID 深链接,重装后档案被删除则无效;只要档案还在,码长期有效,无需重新打印。

Q:支持条形码吗?支持。扫码器兼容 QR、DataMatrix、EAN-8/13、Code128 等多种码制,超市小票上的条码理论上也能当"钥匙"。

Q:和买硬件锁定器比怎么样?核心工作流(App 锁定、网站屏蔽、物理解锁、定时专注)一致,且数据本地化、无订阅。参考 README.md 中的策略对照表,可按需选择 NFC、QR 或组合方案。

写在最后

一张打印的二维码 + 一部 iPhone = 零成本物理 App 锁定器。用 Foqos 把"开始专注"变成扫码这个物理动作,让距离和仪式感替你拦住刷手机的手。所有策略源码位于 Foqos/Models/Strategies/,注册入口为 StrategyManager.swift,欢迎查阅或贡献。

【免费下载链接】foqos

Foqos allows you to lock apps behind the tap of a NFC tag or scan of a QR code. Free and open source alternative to Brick, Opal, ScreenZen, Unpluq, Scrolly, Blok and more!

项目地址:https://gitcode.com/gh_mirrors/fo/foqos
点击查看免费下载

相关推荐

上一篇:e2e 动作分发器源码解析:action-dispatcher 如何守护 AI 测试的安全与授权
下一篇:OpenClaw Studio API 参考:/api/runtime 与 /api/intents 路由完全清单

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/24 6:30:19

Windows平台frpc客户端架构选择与性能优化指南

1. frpc客户端架构差异解析在Windows平台上部署frp内网穿透服务时&#xff0c;我们常会遇到两个不同架构的客户端版本&#xff1a;frpc_win_amd64和frpc_win_arm64。这两个版本的核心区别在于CPU指令集架构的兼容性设计。1.1 x86_64与ARM64架构对比AMD64&#xff08;又称x86_64…

作者头像 李华
网站建设 2026/10/24 6:29:05

文件管理与IO重定向实战:从目录结构到管道魔法

文件管理与IO重定向实战&#xff1a;从目录结构到管道魔法 发布日期&#xff1a;2026-10-16 | 标签&#xff1a;Linux文件管理、IO重定向、管道、inode、硬链接 目录导航 一、Linux文件系统目录结构二、文件类型识别三、文件操作命令实战四、通配符详解五、inode与硬软链接六、…

作者头像 李华
网站建设 2026/10/24 6:20:01

集体好奇心如何提升技术团队效能与创新

1. 集体好奇心的本质与团队效能集体好奇心不是个体好奇心的简单叠加&#xff0c;而是团队成员在协作过程中形成的知识探索共同体。当团队中存在健康的集体好奇心时&#xff0c;成员会主动分享疑问、共同拆解问题、协作寻找答案&#xff0c;这种动态过程能显著提升团队的知识获取…

作者头像 李华
网站建设 2026/10/24 6:17:08

黑洞与宇宙创世:元法则的数学框架与量子引力探索

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/24 6:16:59

用管道符号%>%玩转tidyverse数据清洗全流程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/24 6:16:56

Python逆向实战:从抓包到PyQt5,手把手教你打造专属翻译客户端

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华