Как отладить связь между двумя независимыми приложениями ( macOS)
Может кто-нибудь объяснить мне, как приложения обычно общаются, если одно приложение должно отправить данные во второе приложение. (изображение например). Или как узнать, как реализована связь?
В моем примере я пытаюсь выяснить, как "Capture One 11.x" открывает изображения с помощью других приложений (например, Photoshop или Lightroom).
Я догадывался, что "Capture One 11.x" откроет изображения внутри других приложений, запустив второе приложение с дополнительными параметрами запуска (такими как путь к файлу открытого изображения). Но я не могу найти никаких доказательств этого поведения.
Я благодарен за любую подсказку или помощь.
1 ответ
Существует множество способов взаимодействия приложений друг с другом. Через временные файлы, каналы, сокеты и т. Д.
Ваш конкретный вопрос звучит так, как будто он сводится к тому, "Как можно открыть приложение A, открывающее файл B в приложении C".
Это довольно легко сделать из командной строки, например, с помощью команды macOS open
с -a
выбрать приложение.
open -a Adobe\ Photoshop file.jpg
или же
open -a TextEdit file.txt
open -a MacVim file.txt
Таким образом, один очень элементарный способ, которым приложение может открыть файл в другом конкретном приложении, - это сделать системный вызов macOS. open
,