In this article you’ll find the answers to these questions:
- OnVue can’t see mic
- OnVue can’t see camera
- OnVue doesn’t working
- OnVue mic test
- Zoom mic permission
- Zoom camera permission
- MacOS can’t add Zoom mic permission
- MacOS can’t add OnVue mic permission
- How to manually add app permission MacOS
- How to add automation permission manually
- MacOS automation permission terminal
- MacOS TCC database
- tccplus add kTCCServiceAutomation permission
Some MacOS versions have pretty annoying bug, which is that applications just don’t requesting necessary permissions.
Option #1. Install last system updates
First things first, you need to double check that you have the most recent MacOS version. If you already have, or if you can’t afford to update your system, have a look at the sections below.
Option #2. Try resetting specific permission type using tccutil
tccutil is built-in utility, that you can make use of. The command is following:
tccutil reset Microphone
Microphone with specific permission type that you want to reset (for ex,
After this, try to rerun your app. If the app is still not requesting permissions, move forward to the next sections of this article.
Option #3. Try adding permissions manually using tccplus
You should download this utility: https://github.com/jslegendre/tccplus/releases.
After you downloaded it, follow the steps below:
- Place your app onto Application directory (skip this step, if your app is already there).
- Execute command:
osascript -e 'id of app "Zoom.app"', replacing
Zoom.appwith your app name. This step is dedicated to helping you find the full application name.
- Next, navigate in the terminal onto you folder where tccplus utility was unpacked in, and execute following command:
./tccplus add Microphone com.full.app, where you should replace
com.full.appwith your app name from step 2, and
Microphonewith certain app permission. You can find list of the supported permissions at the Readme section of https://github.com/jslegendre/tccplus.
- Reopen MacOS system settings and double check, that your app was shown in the list of app permissions for specific category you chosen (mic, camera, etc).
Option #4. Change system permissions DB directly
MacOS has dedicated SQLite system DB, that is in charge of storing app’s that are listed in system settings app permissions list.
The DB is located here:
There is a chance that you have to disable SIP protection before opening DB and make any changes, since it’s a system file. Just Google the steps how to disable it. Remember to re-enable it after you are done with your changes.
It’s simpler to use visual DB tool in order to make any changes. You can use this one: https://sqlitebrowser.org/dl.
Open DB Browser for SQLite and open
TCC.db inside of it. Then, find table named
access, right click -> Browse table. You will see something like this:
The first column is a type of the permission. They can be vary, for example:
The second column embodies a full app name, that you want to grant permission to.
For example, here is the full record for Microphone permission for MacOS Sonoma. Column names and their count are vary from version to version.
(the table is scrollable)
It’s way more simpler to duplicate existing record and modify it the way you want. right click on the line number in the records browser -> duplicate record. Next, make changes you want. Finally, click on the “Write Changes” button on the top of the DB Browser.
The same thing you should do for automation permissions. Again, it’s way better to copy existing automation permission record and make changes for your application.
Automation permission works this way: basically you giving your
app_a permission to control
This is the example, when you giving VLC permission to control over Spotify:
(the table is scrollable)
It’s important to note, that
indirect_object_identifier column should have full name for the
app_b. Service for automation events should be
As you see,
kTCCServiceAutomation is not the correct type, as you might have initially guessed. You should use
If you also want to give your
app_a permission to control over
app_b, you should create a record for each integration:
- app_a -> app_b
- app_a -> app_c
- app_a -> app_d
Option #5. MacOS system reset
If nothing works for you, or you don’t want to get your hands dirty with the system files, the system reset definitely is going to help you.
Settings -> General -> Transfer or Reset -> Erase All Content and Settings.
If you still have any questions, feel free to ask me in the comments under this article or write me at email@example.com.
If I saved your day, you can support me 🤝