如何在 macOS 上获取屏幕时间数据?

Giu*_*inò 5 macos time

如何获取屏幕时间应用程序在 macOS 上返回的相同数据?

\n

具体来说,我想以编程方式了解 \xe2\x80\x94 \xe2\x80\x94 我每天在 Visual Studio Code 上花费的时间。

\n

小智 5

数据 screenTime 存储在 /private/var/db/CoreDuet/Knowledge /Users/wgnb/Library/Application Support/Knowledge

阅读莎拉博客了解详细信息


小智 3

我没有足够的声誉来发表评论

我也一直在试图弄清楚这一切。

我最接近的是这个 Github Repo:https ://github.com/Evian-Zhang/ScreenTimeController

他通过查看屏幕时间代理的打开文件描述符证实了我已经完成的研究。ScreenTime 数据库存储在这里:

/var/folders/XYZ/xxxxxxxxxx/0/com.apple.ScreenTimeAgent/Store

您可以在此处阅读有关文件系统这一部分的更多信息

在此文件夹中,有几个 SQLite 文件是代理写入的内容。不幸的是,这个文件夹确实被 MacOS 锁定了。

您可以在此处此处阅读有关其如何锁定的信息。

简而言之,据我所知,除非您禁用这些文件或完全禁用系统完整性保护,否则您无法做到这一点。软件更新也可能会破坏您的调整,并且您必须对这些文件重新禁用 SIP。

这真的很糟糕,因为 ScreenTime 聚合了我所有的设备,而我很想乱搞这些数据。