相信现在大部分打工人都会使用手机上的闹钟功能每天定时叫醒自己吧。虽然现在的手机闹钟应用可以自己定义重复周期等简单的设置,但是对于大部分人来讲这些功能过于简单。今天我就介绍一个使用「快捷指令」实现的我认为比较“智能”的闹钟。

“智能”的定义

闹钟是把人叫醒的,注意这个“醒”字,如果人已经醒了,闹钟就不用响铃了。因此,智能的第一点就是,闹钟可以判断主人有没有醒,只有还没醒,才会响铃。

一年有很多长假,一到这些假期就令人犯难——“这个周末上班,下周一休息”,对于闹钟来说就是灾难,鬼知道今年假期哪个周末要上班,哪个工作日休息?因此,智能的第二点就是,可以自动识别国家法定假期,在假期中自动将闹钟关闭。

总结来说,智能就是除了闹铃该有的功能外:

  1. 当响铃时间到时,如果你醒了,闹铃就不会再响了
  2. 如果今天是法定休息日,即使不是周末,闹铃也不会响;如果今天是法定工作日,即使是周末,闹铃也会响

方案及原理

先说说如何实现上面的两点。

对于第一点,我晚上睡觉前会把手机接上电源充电(无线和有线都可以),白天醒来后就会把手机拿下电源。因此判断方法是:如果响铃时间到时,手机还接着电源,就说明需要响铃,否则就不需要。

对于第二点,可以借助“日历”app中的“中国大陆节假日”,获取当年的法定假期。它会在上面清楚的标注交换过的工作日和休息日。比如下图中的“班”和“休”。

再说说用「快捷指令」实现的原理。

实际上就是利用「快捷指令」判断今天该不该响铃,以及手机是否接入电源。然后根据这两点来打开/关闭一个事先设置好的闹钟。例如:我实现设置好一个6:40的闹钟,我在每天6:39的时候,运行一下快捷指令,这个快捷指令会自动帮我把闹铃打开或者关闭。

是不是很简单?那怎么设置快捷指令每天自动运行呢?按照下面的步骤:

  • 设置一个闹钟,重复选“永不”

  • 打开“快捷指令” - “自动化”

  • 选择“特定时间”

  • 指定时间 - 每天 - 立即运行

判断逻辑

判断逻辑有点复杂,尽量往简单了说。其实大的逻辑只有两块:

  • 判断今天要不要响铃
  • 判断手机连没连上充电器

再给每个大逻辑添加完整的判断逻辑,最后出来的逻辑大致是:

  • 判断今天要不要响铃
    • 今天是不是节假日换班
      • 是 - 响
      • 否 - 不响
    • 今天是不是节假日
      • 是 - 不响
      • 否 - 响
    • 今天是不是周末
      • 是 - 不响
      • 否 - 响
  • 判断手机连没连上充电器
    • 连上 - 把预设好的闹铃打开
    • 没连上 - 把预设好的闹铃关闭

下载地址

https://www.icloud.com/shortcuts/a340b291860341a88c0ab59aab208627

注意

本快捷指令要求iOS版本17.0以上。