我在 OSX 10.14、XCode 10、objective-c
我目前正在开发一个工作流来解释用户为什么他需要接受我的应用程序的自动化,解释如何手动激活它等等。
出于测试原因,最好在系统偏好设置中删除我列出的应用程序,以便我可以多次测试此过程。
例如在图片中:例如,我怎样才能完全删除谷歌浏览器?
编辑: 我无法打开存储此信息的 TCC 数据库:
我在 OSX 10.14、XCode 10、objective-c
我目前正在开发一个工作流来解释用户为什么他需要接受我的应用程序的自动化,解释如何手动激活它等等。
出于测试原因,最好在系统偏好设置中删除我列出的应用程序,以便我可以多次测试此过程。
例如在图片中:例如,我怎样才能完全删除谷歌浏览器?
编辑: 我无法打开存储此信息的 TCC 数据库:
对于您当前的用户,这些权限存储在 TCC 数据库中:
~/Library/Application Support/com.apple.TCC/TCC.db
这是一个 SQLite 数据库,因此您可以使用您选择的编辑器对其进行编辑。
该表称为access
。自动化
中列出的应用程序将作为服务提供。kTCCServiceAppleEvents
您可以简单地删除它们并保存数据库。
编辑
这不是存储在 中的全局TCC 数据库/Library
,受 SIP 保护。
注意~
,表示它在您用户的文件夹中:/Users/xxx/Library/...
即使启用了 SIP,此文件夹也是可编辑的。
编辑 2
所以看起来本地 TCC 数据库也受到保护。
文件系统保护仅对针对 macOS 10.14 SDK 构建的应用程序有效——这就是我能够使用某些第三方客户端对其进行编辑的原因。
所以我想唯一的解决方案是不幸地禁用 SIP。
我可以确认,如果删除 SIP,可以使用 sqlite3 以及 SQLiteManager 等 UI 工具来编辑数据库。