求助:使用tccutil重置InputMonitoring权限失败,执行命令报错
解决tccutil重置InputMonitoring权限失败的问题
首先纠正你命令里的核心错误:你要重置InputMonitoring权限,却误用了ScreenCapture作为服务名,这是导致报错的直接原因。
正确的命令格式
重置单个应用的InputMonitoring权限,正确命令应为:
sudo tccutil reset InputMonitoring <你的应用标识符>
注意事项:
- 应用标识符必须是完整的Bundle ID(如
com.example.yourapp),可通过右键应用→显示简介→查看“标识符”获取,大小写敏感且不能有多余空格。 - 执行命令后需重启目标应用才能生效。
若仍报错的额外排查步骤
- 重启系统后重试:部分macOS版本(如Ventura及以上)对TCC权限管控更严格,重启后再执行命令可能解决问题。
- 重置整个InputMonitoring权限组:如果单个应用重置失败,可尝试清除所有应用的InputMonitoring授权(此操作会重置该类别下所有应用的权限状态):
sudo tccutil reset InputMonitoring
- 手动修改TCC数据库(进阶操作):
- 关闭System Integrity Protection(SIP)后,进入TCC数据库目录:
cd /Library/Application\ Support/com.apple.TCC/ - 用sqlite3打开数据库:
sqlite3 TCC.db - 查询目标应用条目:
SELECT * FROM access WHERE service='kTCCServiceInputMonitoring'; - 删除对应条目:
DELETE FROM access WHERE service='kTCCServiceInputMonitoring' AND client='<你的应用Bundle ID>'; - 退出sqlite3:
.exit - 重启系统并重新开启SIP。
- 关闭System Integrity Protection(SIP)后,进入TCC数据库目录:
内容的提问来源于stack exchange,提问作者Gama
相关产品推荐
相关产品推荐

