На macOS, как я могу открыть графический интерфейс .app скрытый или выключенный экран? - PullRequest
2 голосов
/ 16 марта 2019

У меня есть кроссплатформенная потребность программно открывать приложение GUI, но держать его скрытым от пользователя.По сути, я хочу, чтобы интерфейс, управляемый из командной строки, действовал как обертка над этим графическим приложением и защищал конечного пользователя от просмотра или взаимодействия с ним.Программа от третьего лица, я ее не написал и не могу ее редактировать.

Я могу сделать это так или иначе в Windows, в Linux и (теоретически) в старых версиях Mac, но не в самых последних.В Windows я могу использовать нативный API ShellEx с параметром скрытия окна.Это очень просто и прямо.В Linux я могу рендерить приложение графического интерфейса в виртуальный фрейм-буфер (используя xvfb).

В macOS команда open имеет опции --hide и --background, но они не оказывают никакого влияния (по крайней мере, в этом приложении ...)

Iпопытался изменить файл plist и обнаружил, что LSUIElement скрывает приложение от докера, но оно все равно отображается на экране.LSUIPresentationMode = 4 или 3 НАДО, чтобы работать именно для этого, но, видимо, это больше не работает, как в нескольких версиях ОС назад ...

Я попытался убрать .app с экранас AppleScript.Это работает, но вы должны вручную предоставить разрешения для такой вещи через Системные настройки.В предыдущих версиях Mac эти разрешения можно было менять на лету через sqlLite (если у вас были права sudo), но теперь они тоже это блокировали.Вы можете справиться с этим только через процесс отключения «SIP» и принудительной перезагрузки.Это совершенно за пределами того, что я хочу.

Я пытался использовать подход xvfb на Mac (прыгать через обручи, чтобы получить бинарный файл, который они используют, чтобы включить акции, и теперь уронил), но мне не повезло с этим.Я не думаю, что это возможно, чтобы направить Mac .app на другой дисплей, не так ли?.App не рендерится на X11 по своей природе, верно?

Какие еще могут быть хитрые способы скрыть стороннее приложение на Mac?(и это все еще работает в последних версиях os!)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...