程序聚合 软件案例 FocusTrap - 赛博朋克风格的专注力管理,App这是一款融合了游戏化元素和 AI 人格系统的专注力管理应用,采用 SwiftUI + SwiftData 构建。-FocusTrap

FocusTrap - 赛博朋克风格的专注力管理,App这是一款融合了游戏化元素和 AI 人格系统的专注力管理应用,采用 SwiftUI + SwiftData 构建。-FocusTrap

2026-01-02 18:00:20
行业:生活服务
载体:IOS APP
技术:Combine、Core Data、Swift Package Manager、SwiftUI

业务和功能介绍

1. 立项背景和目标
FocusTrap 是一款面向深度工作者的专注力管理应用,旨在解决现代人手机成瘾、注意力分散的问题。区别于传统番茄钟的冰冷计时器,本项目通过赛博朋克视觉风格和 AI 人格陪伴系统,将专注过程游戏化,让用户在沉浸式体验中培养专注习惯。目标用户为学生、程序员、创作者等需要长时间深度工作的群体。

2. 核心功能模块
专注计时系统:支持倒计时和自由计时双模式,可设置工作/学习/健身/休息等任务类别,配合白噪音场景(海滩、森林、雨声等)营造沉浸氛围。

屏幕时间管控:集成 iOS FamilyControls API,专注期间可屏蔽指定应用,支持白名单管理和紧急解锁机制,从系统层面阻断干扰。

AI 人格系统:内置 Zero、LuXiao、Thea 等多个 AI 角色,每个角色拥有独特性格和对话风格。通过好感度系统,用户专注表现会影响角色态度,解锁更多互动内容。

战报与数据分析:自动生成每日战术报告,包含专注时长、任务分布、心流评级(S/A/B/C)、专注 vs 娱乐时间对比等可视化数据,支持导出分享。

3. 业务流程
用户启动应用 → 选择 AI 人格 → 创建任务指令(或自由模式)→ 开始专注 → 系统屏蔽干扰应用 → AI 实时对话陪伴 → 完成/中断专注 → 获得经验值和好感度变化 → 查看战报分析 → 解锁新场景/角色内容。中途离开应用会触发"逃跑惩罚"机制,AI 会根据角色性格给出不同反应。

项目实现

1. 整体架构和设计思路
项目采用 SwiftUI + MVVM 架构,分为 Views(视图层)、Services(业务逻辑层)、Modals(数据模型层)三层。数据持久化使用 SwiftData 框架,管理 FocusSession、DailyReport、TaskDirective 三个核心实体。状态管理通过 @StateObject 和 @ObservedObject 实现响应式更新,AppState 作为全局状态容器管理场景切换、屏蔽状态等跨页面数据。

UI 组件采用原子化设计,Components 目录包含 30+ 可复用组件(如 BreathingGlow 呼吸光效、RadarChartView 雷达图、CyberBarcodeView 条形码动画等),通过组合构建复杂界面。屏幕时间管控集成 FamilyControls 框架,RealBlockingManager 封装授权请求和应用屏蔽逻辑。

2. 负责模块和结果
AI 对话系统:设计 TheaterDialogueManager 剧场式对话管理器,支持多幕剧本播放。为 Zero、LuXiao、Thea 三个角色编写 500+ 条差异化台词,覆盖问候、鼓励、逃跑惩罚、完成庆祝等 12 种场景触发器。通过好感度阶段(1-5 级)动态调整语气风格。

战报系统:实现 TacticalReportView 战术报告页,包含能量环、任务甜甜圈图、赛博条形码、战斗天平等可视化组件。TacticalMetricsCalculator 负责计算心流评级(基于中断频率)、战斗结果(专注/娱乐时间比)等指标。支持 ImageExporter 导出为分享图片。

属性测试:编写 15+ 个 Property-Based Tests,覆盖对话脚本格式校验、时长格式化、状态序列化往返等核心逻辑。

3. 遇到的难点和解决方案
FamilyControls 授权时序问题:首次启动时授权弹窗与 UI 渲染竞争导致崩溃。解决方案:将授权请求移至 .task 修饰符中异步执行,并添加授权状态检查防止重复请求。

SwiftUI 编译超时:ContentView 超过 1200 行导致类型推断超时。解决方案:将 MainActionButton、DirectiveHubView 等复杂组件提取为独立文件,使用 @ViewBuilder 拆分条件渲染逻辑。

对话脚本维护困难:多角色多场景台词散落各处难以管理。解决方案:设计统一的 TheaterScript 协议,每个角色独立 Scripts 文件,通过 Property-Based Testing 自动校验格式一致性。

示例图片视频


Xuguoan
30天前活跃
方向: 前端-Web前端、后端-Java、
交付率:100.00%
相似推荐
梵花田-梵花田
梵花田是一款专注于身心健康的应用,主要面向有睡眠困扰、焦虑情绪、需要放松和专注的用户群体。项目定位是提供高品质的白噪音、冥想课程、助眠故事等内容,帮助用户改善睡眠质量、缓解压力、提升专注力。 (业务模式) 采用 免费内容 + 会员订阅 的模式。用户可以免费使用部分白噪音和基础冥想内容,订阅会员后解锁全部冥想课程、原创助眠故事、高级混音功能等。 (核心功能介绍) 我将其后端核心功能分为以下几个模块: 声音模块 提供超过30种白噪音(如雨声、海浪、篝火、钢琴等),支持用户多轨混音(同时播放多个声音并独立调节音量)。 支持定时播放、收藏、最近播放记录。 冥想模块 包含 14天入门冥想计划,以及针对不同场景的主题课程(如“考前减压”、“职场焦虑缓解”、“睡前放松”等)。 记录用户的训练进度、连续打卡天数,支持课程评价。 睡眠助眠模块 提供原创的助眠故事(如“月光森林”、“海边小屋”等),配有舒缓的背景音乐和专业配音。 支持故事播放进度自动保存、定时关闭。 宝宝专区模块 专门为母婴群体设计,包含哄睡音乐、摇篮曲、睡前动画和短篇故事。 个人中心与会员模块 用户注册登录(手机号/微信)、会员购买与续费、历史记录、收藏夹、睡眠统计报告等。 后台管理系统 为运营人员提供内容发布(上传音频、配图、文字)、用户管理、数据看板(日活、播放量、会员转化率)等功能。
音视频编辑引擎 WES 自动化测试平台-万兴喵影
WES 是公司中台部门自研的基于本地执行的 C++ SDK,主要实现时间线编辑、音视频处 理、特效添加以及各类音视频格式导出等功能。原先无中台自动化测试,依赖开发提供的 Demo 进行手工验证。个人主导从 0 到 1 逐步构建起自动化测试框架。
短剧 & 网文全链路内容服务平台(含分销 / 实验体系)
立项背景和目标:针对短剧与网文内容爆发式增长需求,搭建覆盖多端的全链路内容服务平台,实现内容分发、付费转化、广告变现及数据化运营的一体化闭环。目标是提升内容曝光效率与用户留存率,通过 A/B 实验优化产品体验,搭建分销体系拓展业务边界,支撑千万级日活用户的高并发稳定运行。 软件功能、核心功能模块的介绍: 内容分发模块:支撑短剧、网文多类型内容的个性化推荐,支持首页、单列、搜索等多场景内容展示,通过 A/B 实验框架动态调整内容样式与推荐策略。 付费与变现模块:集成短剧付费点播、广告变现(开屏、信息流)能力,对接 Pangle、IronSource 等第三方广告平台,实现广告精准投放与付费转化。 实验与运营模块:搭建 A/B 实验平台,支持多维度分组配置,实现不同用户组展示差异化内容 / 样式,配套数据埋点与效果统计。 分销结算模块:构建短剧分销后台,支持合作方管理、每日收入自动拆分、数据对账,保障分账数据准确与高效结算。 多端适配模块:IOS、安卓 APP 多端统一开发,保证跨端体验一致性与功能同步迭代。 业务流程、功能路径描述:用户从多端入口进入平台 → 后端通过 A/B 实验分组匹配差异化内容配置 → 前端渲染个性化内容页面 → 用户完成浏览、播放、付费 / 广告点击等行为 → 数据实时埋点上报至数据中心 → 结算模块异步处理分销收入拆分与对账 → 运营通过数据看板分析实验效果与业务数据,迭代优化内容策略与产品功能
OTT直播流媒体编码服务器-LiveEncoder
1. 立项背景和目标 为内容供应商如体育联盟、电影电视产业、音视频行业提供专业卓越的音视频质量,采用高精度编码技术、广播级视频传输应用设计,在分发过程中最大限度保留原始视频的图像细节、清晰度和色彩梯度,成为提供OTT/IP视频平台的关键头端组件。 2. 主要功能和特性 - 多信源接入 支持开放标准的系统输入流协议, 支持采集卡(Decklink、AJA等)、Webcam、NDI、TS over TCP/UDP/RTP/RTMP/HTTP/HLS/SRT/ZIXI等。 - 多协议输出 支持开放标准的直播流协议,如RTMP/RTP/SRT/ZIXI/HLS/MP4等,可以接驳各种主流的流媒体服务器。 - 广泛的数据服务 除了音视频,提供标准的数据服务,如隐藏式字幕(CC 608/708)、DVB Subtitle、Teletext、SMPTE2038、广告信号SCTE-104/35透传/转换/插入等,为视频提供合规、增值服务。 - 可靠的冗余设计 提供输入输出信号级别、工作流级别、节点实例和设备级别的故障转移冗余设计,支持自动手动、手动、预设方式的1+1/N+M故障转移方式。 3. 业务流程 工作流:工作配置 -> 输入 -> 预处理 -> 编码 -> 输出 - 工作配置 音视频格式,编码参数设置,数据支持等模版 - 输入 接收客户提供的信号,分解信号内容 - 预处理 如果需要,解码成工作配置的音视频格式,解析各种包含在信号里的数据如字幕、广告点,添加台标,等 - 编码 根据编码参数设置编码成输出格式,支持CPU/GPU编码 - 输出 交织并封装音视频,支持各种流媒体协议输出
某政府单位电视监测业务仿真测试平台
同时操控多个测试测量仪器和前端(待测物),使用多个通讯协议; 模板化复杂测试,节约大量人力成本和时间成本; 支持人工定制化,控制各测量仪器对前端进行自定义测试; 多线程以及线程间同步, 支持同时测试多台前端
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服