Skip to content

Repository files navigation

macOS 喝水、护眼与起身提醒

一个轻量、原生、离线运行的 macOS 菜单栏小工具。它把饮水记录、护眼休息和久坐起身提醒整合在同一个 App 中,重点帮助长期使用电脑的人中断持续用眼和久坐。

特点

  • 原生 AppKit / Objective-C,无第三方运行时依赖
  • 菜单栏常驻,并可在设置中控制是否同时显示程序坞图标(默认显示)
  • 所有数据只保存在当前 Mac 的 NSUserDefaults
  • 不联网、不登录、不上传数据
  • 支持浅色/深色系统环境,以及减少动态效果、减少透明度和提高对比度
  • Apple 芯片原生构建,App 包体约 1.5 MB

使用截图

以下均为 App 在 macOS 中的实际运行画面,截图内容未做界面合成。

今日饮水、护眼和起身进度
今日饮水与休息进度
最近七天饮水、护眼和起身完成情况
最近 7 天记录
提醒、提示音、程序坞和登录启动设置
提醒与系统设置
护眼休息倒计时浮层
护眼休息倒计时
起身活动提醒浮层
起身活动提醒

macOS 饮水通知
macOS 系统饮水通知

下载与安装

可以从 GitHub Releases 下载最新的 macOS Apple 芯片版压缩包。

  1. 下载并解压 WaterReminder-*-macOS-arm64.zip
  2. 将“喝水提醒.app”拖入“应用程序”文件夹。
  3. 双击启动“喝水提醒”。
  4. 根据系统提示允许通知。

⚠️ 首次打开显示“Apple 无法验证”怎么办

如果看到“未打开‘喝水提醒’,Apple 无法验证‘喝水提醒’是否包含可能危害 Mac 安全或泄漏隐私的恶意软件”,请先点 “完成”,不要点“移到废纸篓”。

  1. 打开 Mac 的“系统设置”。
  2. 点击“隐私与安全性”,向下滚动到“安全性”。
  3. 找到“已阻止使用‘喝水提醒’”的提示,点击 “仍要打开”
  4. 使用登录密码或 Touch ID 确认。
  5. 警告再次出现时,点击 “打开”

“仍要打开”通常只会在尝试启动 App 后的一小时内出现。如果没有看到,请再双击一次“喝水提醒”,随后立即返回“系统设置”检查。成功确认一次后,macOS 会把这个 App 保存为安全性例外,以后可以正常双击打开。

这个提示是因为公开版本没有使用 Apple Developer ID 签名和 Apple 公证,并不等同于系统已经检测到病毒。请只对从本项目 GitHub Releases 下载的版本执行上述操作。如果系统明确提示“将损坏你的电脑”或“检测到恶意软件”,请不要继续打开,并在项目中反馈。

更完整的处理说明见 使用说明.md

当前公开版本使用本地 ad-hoc 签名,没有 Apple Developer ID 公证。macOS 可能提示无法验证开发者;不放心时可以阅读源码并按下方步骤自行构建。它只支持 Apple 芯片 Mac 和 macOS 13 或更高版本。

默认提醒

  • 工作时间:08:30–12:00、13:30–18:00
  • 护眼:每 20 分钟提醒一次,默认休息 50 秒
  • 起身活动:每 60 分钟提醒一次,默认活动 5 分钟
  • 起身提醒支持“开始活动”“稍后 10 分钟”和“跳过”
  • 午休期间暂停提醒,Mac 睡眠恢复后不会连续补发旧提醒
  • 饮水目标:每天 2000 ml
  • 快捷记录:+50+100+250+500+850+1000 ml

护眼和起身提醒使用不抢输入焦点的屏幕提示,并可播放 Mac 系统提示音。每小时的起身提醒会与饮水进度检查合并,减少重复打扰。

构建要求

  • macOS 13 或更高版本
  • Apple 芯片 Mac
  • Apple Command Line Tools(不需要安装完整 Xcode)

在项目目录运行:

./build.sh

生成的 App 位于:

dist/喝水提醒.app

运行完整验证:

./verify.sh

验证内容包括核心时间逻辑、设置兼容、签名、架构、依赖、包体大小、照片隔离和网络调用检查。

目录结构

Sources/     App 源码
Resources/   Info.plist 和矢量图标
Tests/       核心逻辑测试
Tools/       图标生成工具
build.sh     构建、测试和 ad-hoc 签名
verify.sh    成品验证
使用说明.md   中文使用说明

build/dist/ 是本地生成内容,不提交到 Git 仓库。设计参考照片也不包含在项目中。

隐私与使用范围

App 没有网络功能,也不会读取浏览器、通讯录、聊天记录或其他个人文件。饮水和休息记录仅保留最近 7 个日历日。

本工具用于日常提醒,不是医疗器械,也不能代替眼科、骨科或康复医学检查。

更详细的使用方式见 使用说明.md

许可证

本项目采用 MIT License。你可以使用、修改和分发代码,但需保留原版权与许可声明。

About

轻量原生 macOS 喝水、护眼与起身提醒菜单栏 App

Topics

Resources

Stars

9 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages