
我無法允許 MacBook Pro 的攝影機和麥克風在不同的應用程式(Google Chrome、Slack 等)中使用,因為它們沒有出現在「系統偏好設定 -> 安全性和隱私 -> 麥克風/相機」中。
由於沒有應用程序,也無法添加它們,因此沒有複選框,如中所述這個蘋果支持文檔。
答案1
我在 macOS 10.14 上嘗試使用 Microsoft Powerpoint 2011 錄製音訊時遇到了相同的問題。 Powerpoint 不會顯示在可存取麥克風的應用程式清單中(系統偏好設定 -> 隱私權 -> 麥克風)。
請注意,您可以使用以下命令從命令列(即終端)重置此清單:
tccutil reset Microphone
這可能對您有幫助,也可能沒有幫助。就我而言,事實並非如此。
有幫助的是從命令列啟動PowerpointiTerm(儘管我懷疑,使用這些Terminal.app
作品也是)。所以在命令列上,我輸入:
/Applications/Microsoft\ Office\ 2011/Microsoft\ PowerPoint.app/Contents/MacOS/Microsoft\ PowerPoint
即,我執行了 Powerpoint 子資料夾中的可執行檔/Contents/MacOS
。按照慣例,每個應用程式都有一個可執行文件,這意味著您可以透過這種方式啟動每個應用程式(但可執行檔的名稱通常會有所不同)。
以這種方式啟動,當我嘗試存取麥克風時,系統詢問我是否要授予iTerm
對麥克風的存取權限。授予存取權限後,我可以透過 Powerpoint 錄製音訊。
顯然,這只是為了讓事情順利進行而進行的駭客攻擊。但有時您所需要的只是 hack。
答案2
解決方案
已成功測試
- 蒙特雷 12.2.1
- 大蘇爾 11.7.4
- 文圖拉 13.3, 13.6
- (其他版本請見答案底部)
製作 TCC 資料庫的備份副本,以防萬一:
cp ~/Library/Application\ Support/com.apple.TCC/TCC.db ~/TCC.db.bak
我透過執行以下命令開啟了 TCC 資料庫:
sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db
我透過輸入以下內容添加了該應用程式:
insert into access values ('kTCCServiceMicrophone','<AppBundleURLname>', 0, 2, 2, 1, null, null, null, 'UNUSED', null, null, 1669648527);
關閉與資料庫的連線:
.quit
<AppBundleURLname>
可以透過開啟並檢查檔案找到取代上述步驟 3 中佔位符的值:
/Applications/appname.app/Contents/Info.plist
通常它是像CFBundleURLName
或 之類的值鍵CFBundleIdentifier
。例如,對於 WhatsApp MacOS 應用程序,如果您開啟檔案:
/Applications/WhatsApp.app/Contents/Info.plist
然後你會發現類似的東西:
<key>CFBundleURLName</key>
<string>com.WhatsApp.chat</string>
這表示在這種情況下,您應該在上述說明的步驟 3 中替換<AppBundleURLname>
為。com.WhatsApp.chat
例如
筆記: 插入記錄中的最後一個值(參見步驟 3)只是一個時間戳(以秒為單位),您可以輸入與您想要的任何日期相對應的時間戳,例如要檢查與時間戳 1669648527 相對應的日期,您可以鍵入:
$ date --date='@1669648527'
Mon 28 Nov 15:15:27 GMT 2022
如果您使用的是不同的 MacOS 版本
在這種情況下,表的結構access
可能會有所不同,並且您插入的記錄可能會有所不同。您可以使用以下命令檢查其結構:
若要將要新增的記錄與其他現有記錄進行比較:
select * from access ;
或甚至更好:
select * from access where service = 'kTCCServiceMicrophone' ;
要檢查表格的結構(例如列)
access
:.schema access
答案3
就我而言,我根本不會收到相機、麥克風權限提示。安全性和隱私中的相機部分根本不會填充任何應用程式。
檢查控制台,發現每次我嘗試使用任何需要攝影機/麥克風存取的應用程式時,它都會在控制台中向我拋出以下錯誤:
政策不允許提示 REQ:{ID: xxx.xxx.xxx}
和
對 kTCCServiceCamera 的存取被拒絕
我嘗試了所示的方法@loadbox 的回答但這對我不起作用。原來我有系統完整性保護禁用。我必須重新啟動 Mac 並以恢復模式啟動。啟動終端並輸入以下內容重新啟用它:
csrutil enable
reboot
機器啟動後,我啟動了 Skype,瞧……它提示需要相機權限。問題解決了。根據您的配置,您的里程可能會有所不同。
答案4
切換到管理員帳戶為我解決了這個問題。
標準帳戶的麥克風設定中只有一個應用程式。管理員帳戶有 5 個以上的應用程式。
不確定是否是因為應用程式安裝在管理員帳戶上,或者應用程式是否未正確請求權限。