无需听信我们的核实方法

SimpleShot 为何需要录屏权限,以及如何自行核实

macOS 对所有读取屏幕的 App 都使用同一项权限,无论是截图还是录像。SimpleShot 需要它才能截取。下面说明它如何使用这项权限,以及你如何不必相信 SimpleShot,也能亲自验证。

所有截图 App 都用同一项权限。

在 macOS 上,App 只有获得录屏权限才能看到屏幕上的内容,该权限位于“系统设置” › “隐私与安全性” › “录屏与系统录音”。截图并没有单独的权限:截图就是看一眼屏幕,所以每个截图 App 申请的都是和录屏 App 相同的权限。

SimpleShot 何时读取屏幕。

只在你截取时:通过快捷键、菜单栏、它的某个窗口,或者在你设定的计时结束时。截取区域时,它会将每块屏幕读取一次,以静止画面配合放大镜呈现给你,供你选择。滚动截取会在你滚动时读取屏幕;录制则持续读取,直到你停止。两次截取之间,它什么也不读取,也不发送任何内容:文本识别和隐藏隐私信息都在你的 Mac 上完成。

“SimpleShot” › “设置” › “隐私”会列出每一次读取:时间、读取了什么以及由什么触发。该列表在你的 Mac 上保留 90 天,你可以随时清除。但这毕竟是 SimpleShot 自己的记录,所以下面的核实方法不依赖它。

核实方法一:在“终端”中查看 macOS 自己的日志。

App 每次读取屏幕时,macOS 都会检查它的录屏权限并记录下来。打开“终端”(位于“应用程序” › “实用工具”),粘贴下面这行命令,然后按下 Return 键:

log stream --style compact --predicate 'process == "tccd" AND eventMessage CONTAINS "kTCCServiceScreenCapture" AND eventMessage CONTAINS "Allowed"'

使用 Mac 时让它保持运行。每一行都会在 Sub: 后面标出读取屏幕的 App(SimpleShot 为 dev.stillbyte.SimpleShot),并在 binary_path= 后面标出它的位置。用 SimpleShot 截取一次,会在同一秒内出现几行;SimpleShot 打开时也会出现一行;两次截取之间则一行也没有。其他 App 读取屏幕或读取其他 App 的窗口名称时,也会出现在这里。按下 Control-C 即可停止。

核实方法二:哪些内容离开了你的 Mac。

SimpleShot 只连接三个地址:updates.stillbyte.dev 用于检查更新,proof.getsimpleshot.com 用于你请求时间证明时(它发送的是图像的指纹,绝不是图像本身),links.getsimpleshot.com 则在你创建链接后使用。只有当你为某个截取内容创建链接时,它才会离开你的 Mac。

想亲自查看,可以使用能显示 App 每一个连接的防火墙,例如免费开源的 LuLu:对于 SimpleShot,它只会显示这几个地址。你也可以在“终端”中运行下面这行命令,实时查看 SimpleShot 的连接以及每个连接发送了多少数据;只要你不使用更新、时间证明或链接,列表就始终为空。按下 Q 即可退出。

nettop -p SimpleShot

macOS 每月都会再问一次。

大约每个月,macOS 都会再次询问是否允许 SimpleShot 继续读取屏幕,原话是:该 App“正在请求绕过系统专用窗口选择器并直接访问你的屏幕和音频”。所有截图和录屏 App 都会在上次询问 30 天后收到同样的提示,而且你 Mac 上的每一份 App 副本都会分别收到:这并不代表 App 做了什么新的事情。请选择“允许”。SimpleShot 依然只在你截取时读取屏幕,上面的核实方法可以证明这一点。

App 唯一避开这个提示的办法,是让每次截取都经过 macOS 的窗口选择器,而它无法选择屏幕上的某个区域。Apple 只对远程桌面 App 破例。

macOS 不允许出现在任何截取内容中的窗口。

macOS 会把某些窗口排除在所有 App 的截取内容之外:它自己的安全提示(例如请求权限的提示),以及被所属 App 标记为私密的窗口。这些窗口不会出现在 SimpleShot 的截取内容中,也不会出现在你选择区域时的静止画面里;当 SimpleShot 能判断截取内容中原本有这样的窗口时,它会告诉你。SimpleShot 无法改变这一点,其他截图 App 也受同样的规则限制。

macOS 自带的“截屏” App 可以截取这些窗口:从“应用程序” › “实用工具”中打开它,或者在 SimpleShot 未占用系统截屏快捷键时按下 ⇧⌘5。

关闭权限。

你可以随时在“系统设置” › “隐私与安全性” › “录屏与系统录音”中关闭 SimpleShot。之后它将完全无法读取屏幕,并会在你尝试截取时提示你。