问题描述
一时兴起拿了老索尼电脑SVS131A11T装了个黑苹果,起先十分顺利,WiFi、蓝牙、睡眠均正常
之后尝试安装了微信,腾讯会议等软件,均发现有麦克风摄像头无法自动授予访问权限的问题,到隐私偏好设置中没有任何选项
网上可查询到的教程均不适用于Catalina 10.15,故自编教程
解决方法
1.禁用系统完整性保护(SIP)
在黑苹果OC引导界面按空格键,选择Recovery 10.15.7(dmg),按enter进入Recovery模式
选择“实用工具”栏下的“终端”,执行:
1 | csrutil status |
如果显示“System Integrity Protection status: enabled.” 说明SIP处于打开状态,需执行:
1 | csrutil disable |
屏幕显示”System Integrity Protection is off.” 表示SIP已经关闭。此时可以退出终端,重启电脑。
注:如果显示“System Integrity Protection status: unknown” 建议也disable一下。
2.获取APP的string值
打开应用程序目录夹,右键选择需要添加权限的程序,显示包内容
打开Contents文件夹,找到 Info.plist文件,并选择文本编辑打开此文件
此处即可找到腾讯会议的string值为com.tencent.meeting,其他软件方法均相同
以上内容应该是适用于所有版本的MacOS,之后的会略有不同
3.获取权限
打开终端,首先检查TCC.db表结构:
1 | sudo sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db "PRAGMA table_info(access);" |
此时会要求确认password,输入回车即可,终端为保护密码会不显示输入内容
可见表结构为12列,故使用以下指令:
1 | sudo sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db "INSERT OR REPLACE INTO access VALUES( |
仍会需要密码,输入回车即可
重启腾讯会议,发现此时麦克风能够正常打开,隐私偏好设置中也有了腾讯会议
如果想开启摄像头,service值为:kTCCServiceCamera
如果想开启摄像头,service值为:kTCCServiceAll
此外,附上远景论坛中17列的指令:
1 | sudo sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db "INSERT or REPLACE INTO access VALUES('kTCCServiceMicrophone','com.tencent.xinWeChat',0,1,1,1,NULL,NULL,'UNUSED',1,0,1551892126,0,0,0,0,0);" |
以及csdn中13列的指令:
1 | sqlite3 ~/Library/application\ Support/com.apple.TCC/TCC.db "REPLACE INTO access VALUES('kTCCServiceAll','com.apple.FinalCut',0,2,0,1,NULL,NULL,NULL,'UNUSED',NULL,0,1608354323);" |
教程结束,我要去吃拼好饭了