清洁 Mac 键盘时怎么锁住输入
Mac 醒着的时候去擦 MacBook 键盘,就是一场小灾难,布一压下去二十个键一起亮,Spotlight 弹出来,某个东西被改了名,文档里多出一行乱码,要是屏幕已经锁了,刚用一块超细纤维布,在密码框里白试了三次。
macOS 没有内置的键盘锁定,系统设置里没有清洁模式,那些看起来像那么回事的选项,也做不到大家以为的那样。
简短结论: 锁屏拦不住按键,输入仍可能进入密码框,清洁屏幕工具可以减少开机时的误触,但不能代替关机和断电清洁。部分 MacBook 会被键盘或触控板重新开机,关机也不是保证不响应任何输入的键盘锁,具体行为见 Apple 的开机说明。
为什么锁屏不够
按 Control-Command-Q 锁屏,感觉应该安全了,锁后面其实还有三样东西是活的。
键盘还在,锁屏要用它收密码,每一次擦拭都会打进那个输入框,试错次数够了,macOS 会强制等一段时间才肯再收下一次。
触控板也在,手掌撑在铰链附近擦的时候,压上去就算一次点击。
带 Touch ID 的 Mac 上,传感器也在,擦到它就是一次解锁尝试,连续读失败几次后,macOS 不再接受指纹,直到输入密码。
可选做法,按顺序看
| 做法 | 挡住按键 | 挡住触控板 | 代价 |
|---|---|---|---|
| 关机 | 不保证,按键可能开机 | 不保证,触控板可能开机 | 清洁前保存工作,按机型说明断开电源和外设 |
| 合盖睡眠 | 是 | 是 | 盖子合着,键盘擦不到 |
| 锁屏 | 否 | 否 | 登录失败,什么都没挡住 |
| 屏幕保护程序 | 否 | 否 | 任意一键立刻退出 |
| 挡住输入的工具 | 是 | 看具体工具 | 需要辅助功能权限 |
清洁硬件按 Apple 的机型说明操作,不需要为了这件事安装软件。下面的输入拦截工具解决的是开机时的误触,不提供防水或断电保护。
挡住输入的工具实际在做什么
Mole 通过 event tap 拦截按键,这需要在系统设置 > 隐私与安全性里打开 辅助功能 权限。
event tap 能在事件到达应用之前拦住输入,因此 macOS 要求明确授权。不同工具实现方式可能不同,授予这类权限前,应确认它为何需要,以及是否信任开发者。
然后再看怎么退出,按任意键就退出的工具等于自己废了自己,因为布一定会按到键,退出方式必须是一块布不小心做不到的事。
Apple 的 CGEventTapCreate 文档说明了这种 tap 的位置、事件掩码和回调。
Mole 怎么处理这件事
Mole 的「清洁屏幕」模式在 event tap 这一层拦住键盘事件,启用期间,按键、抬键和修饰键变化都不会传给下层应用。
退出要两步刻意动作,退出控件会一直藏着,直到指针移动得足够远,看起来像是有意的,露出来之后还得 按住整整一秒,不是点一下,布在触控板上拖过去,这两样都做不到,这就是用意,单击一下或按一个键,正好是布会不小心做出来的事。
鼠标移动不进这个 tap 拦截的范围,每秒上百个事件挤进同一个还要吞按键的 tap,有可能被 macOS 当成太慢而关掉,而这个 tap 才是真正干活的那一块。
从菜单栏或键盘快捷键启动,清洁不用关掉已经打开的任何东西。
怎么安全地清洁硬件
挡住输入只防误触,不保护硬件免受液体影响。用湿布清洁外壳或屏幕前,先关机并断开电源和外设,具体要求见 如何清洁 Apple 产品 里。
最常被忽略的几条:
- 不要把任何东西直接喷到 Mac 上。 润湿的是布,不是机器,液体会顺着重力进键盘。
- 用柔软、不掉絮的布。 纸巾会掉渣,还能划花屏幕镀层。
- 水分不要进任何开口,包括键帽缝隙、接口和扬声器网罩。
- 不要浸泡任何部件,表面也不要用漂白剂或过氧化氢。
- 用酒精湿巾或压缩空气之前,先核对 Apple 针对具体机型的现行说明,网上流传的建议,常常说的是 Apple 已经不再出货的键盘结构。
屏幕要单独当心,现在的 Apple 屏幕都有镀层,纳米纹理屏幕更是有专门的清洁步骤和专用布,那里用错东西,是改不回来的。
一套能用的流程
- 如果正在使用清洁屏幕模式,先退出,再保存工作、关机,断开电源和外设。
- 按具体机型的 Apple 说明准备柔软、不掉絮的布,需要微湿时,在远离 Mac 的地方润湿。
- 按机型要求分别清洁屏幕、键盘、掌托和触控板,不向机器喷液体,不让水分进入开口。
- 如果擦拭按键或触控板让 Mac 重新开机,先停止擦拭,确认电源状态后再继续。
- 等表面完全干燥后,再连接电源和外设并开机。
常见问题
macOS 有键盘清洁模式吗?
没有,系统里没有在 Mac 保持唤醒时专门禁用键盘输入的清洁模式。湿布清洁前仍应关机并断开电源和外设,但部分机型会因按键或触控板操作重新开机,不能把关机当成键盘锁。
给应用辅助功能权限安全吗?
这是对一种真实能力的真实授权,答案完全取决于那个应用,任何要拦住按键的东西都需要它,所以要评估的是开发者,不是那个权限弹窗。
锁屏能保护键盘吗?
不能,锁屏按设计就会接收键盘输入,擦拭会打进密码框,还可能触发 macOS 在连续失败后加上的等待。
合上盖子行不行?
这样能停掉输入,但刚盖住的键盘擦不到,只适合清洁外壳,别的不行。