Access to the Screen Recording API #7792
Replies: 5 comments 8 replies
-
Hey @Aleksey28!
To simplify the process, I recommend taking a snapshot of the database row from the real machine where the required permissions were granted to the specified client. |
Beta Was this translation helpful? Give feedback.
-
Hi @erik-bershel, Thank you for the replay.
and now the top pop-up doesn't appear, but another one still ruins the task. look at the video. There weren't other rows for this app in the database of the real machine, so I decided to add these rows:
but it didn't help. Do you know what should I add more? foo.mov |
Beta Was this translation helpful? Give feedback.
-
@Aleksey28 hey
Which one? There are two TCC.db. I can guess that the second permission is being written to the system database (Library/Application Support/com.apple.TCC/TCC.db). Please check and add it too. Example of method for the pipeline with the same structure:
|
Beta Was this translation helpful? Give feedback.
-
Okay, I see. I managed to change both databases in the real machine. But it looks like there isn't access to the system database in the GitHub image. Here is my script: configure_tccdb () {
local values=$1
local dbPath="$HOME/Library/Application Support/com.apple.TCC/TCC.db"
local systemDbPath="/Library/Application Support/com.apple.TCC/TCC.db"
local sqlQuery="INSERT OR REPLACE INTO access VALUES($values);"
sudo sqlite3 "$dbPath" "$sqlQuery"
sudo sqlite3 "$systemDbPath" "$sqlQuery"
}
userValuesArray=(
"'kTCCServiceAppleEvents','com.devexpress.testcafe-browser-tools',0,2,3,1,X'fade0c0000000068000000010000000700000007000000080000001443fa4ca5141baeda21aeca1f50894673b440d4690000000800000014f8afcf6e69791b283e55bd0b03e39e422745770e0000000800000014bf4fc1aed64c871a49fc6bc9dd3878ce5d4d17c6',NULL,0,'com.apple.systemevents',X'fade0c000000002c00000001000000060000000200000010636f6d2e6170706c652e53616661726900000003',NULL,1687952810"
"'kTCCServiceScreenCapture','com.devexpress.testcafe-browser-tools',0,2,3,1,X'fade0c0000000068000000010000000700000007000000080000001443fa4ca5141baeda21aeca1f50894673b440d4690000000800000014f8afcf6e69791b283e55bd0b03e39e422745770e0000000800000014bf4fc1aed64c871a49fc6bc9dd3878ce5d4d17c6',NULL,0,'UNUSED',NULL,0,1687952810"
)
for values in "${userValuesArray[@]}"; do
configure_user_tccdb "$values"
done I found a similar issue #1567. Based on this issue @miketimofeev added permission for the Please, could you do the same for |
Beta Was this translation helpful? Give feedback.
-
We're locking this discussion because it has not had recent activity and/or other members have asked for more information to assist you but received no response. Thank you for helping us maintain a productive and tidy community for all our members. |
Beta Was this translation helpful? Give feedback.
-
Image: macos-latest (20230618.1)
I try to run tests via TestCafe. To open browsers TestCafe uses testcafe-browser-tools. But testcafe-browser-tools needs access to the Screen Recording API. How can I give this access?
Without this access pop-up with an access request appears and an error is thrown.
There is my repo with an example: https://github.com/Aleksey28/testcafe-macos-safari-tests
Repro steps:
main
workflowfoo.mov
Beta Was this translation helpful? Give feedback.
All reactions