Введение
Приложение, работающее на OS X иногда, должно связываться с другим приложением. То, что другое приложение могло быть на том же компьютере или различном. По различным причинам это могло бы хотеть сказать другому приложению открывать документ, или это могло бы хотеть выполнить программу как подпроцесс. Пользователь мог бы хотеть, чтобы приложение передало данные другому приложению. Или приложение могло бы хотеть сделать свои службы доступными для пользователей независимо от приложения, которое они в настоящее время используют.
OS X обеспечивает диапазон программируемых интерфейсов и служб, включающих их и типы других коммуникации. Базовые платформы Какао, Основа и AppKit, имеют классы, поддерживающие следующие функции:
Копия, вырезанная и вставленная. Пользователи копируют объект в одном приложении и вставляют его в другом приложении.
Перетаскивание. Пользователи перетаскивают объект в одном приложении к другому приложению, принимающему его.
Прикладные службы. Службы позволяют Вам совместно использовать ресурсы и возможности Вашего приложения с другими приложениями в системе. Пользователи выбирают объект в одном приложении и выбирают услугу, предложенную другим приложением для работы на него; например, пользователь выбирает слово в документе и затем выбирает службу, ищущую то слово в приложении словаря.
Службы рабочей области.
NSWorkspaceкласс функционирует как посредника между приложениями Какао и OS X «рабочая область», состоящая прежде всего из услуг, предоставленных Средством поиска. Службы этого класса позволяют приложению запустить другое приложение, открыть файл в другом приложении, управлять файлами и устройствами и изменениями дорожки в рабочей области.Выполнение подпроцессов. Используя определенные Фундаментальные классы, Ваше приложение может запустить подпроцессы и связаться с ними.
Удаленный обмен сообщениями. Используя распределенную технологию объектов, Вы приложение может отправить сообщения в другое приложение (на том же или различном компьютере) и получить сообщения от него.
Кроме того, XML-RPC и технологии SOAP включают вызовы удаленной процедуры из сценариев AppleScript или приложений.
Запустите здесь
Хотите познакомиться с основными принципами?
Для использования в своих интересах технологий и интерфейсов программирования для межсвязи приложений необходимо познакомиться с основными понятиями Какао, такими как протоколы, делегация, списки свойств и уведомления. Считайте Фундаментальное Руководство по Какао для получения этого существенного знания.
Предпочесть учиться на примере?
CocoaDragAndDrop демонстрирует приложение Какао, позволяющее Вам перетащить изображения.
Moriarity создает приложение, запускающее подпроцесс для выполнения инструмента командной строки.
SimpleService создает две прикладных службы, та, капитализирующая слова и другой, что открытые файлы дословно указали как пути.
Пойдите подробно
Передача данных между приложениями
Руководство по программированию области монтажа описывает, как использовать области монтажа, стандартизированный механизм для обмена данными в приложениях или между приложениями. С областями монтажа можно скопировать, сократить и вставить данные в и между приложениями. Но можно также использовать их в других операциях, таких как перетаскивание и прикладные службы.
Темы Программирования перетаскивания объясняют, как реализовать пользователей включения функции для перетаскивания представляющих данные объектов между приложением и другим приложением (или в приложении).
Реализация прикладных служб
Руководство по внедрению служб описывает, как службы OS X работа, показывает некоторые типичные меню Services и обеспечивает инструкции о том, как можно использовать службы в приложении.
Accessing Workspace Services
Workspace Services Программируя Темы объясняет, как использовать
NSWorkspaceкласс, чтобы открыть файлы и URLs, выполнить операции файла (такие как движущиеся файлы), запустить приложения и открытые документы, и получить информацию о смонтированных объемах.
Выполнение подпроцессов и передача по каналу данных между процессами
Взаимодействие с Операционной системой объясняет, как можно использовать различные Фундаментальные классы для, может запустить подпроцессы, данные канала между процессами, получить переменные окружения процесса, получить имя и адрес текущего узла, искать доменные имена, получить корневой каталог пользователя и полное имя и т.д.
Удаленный обмен сообщениями и вызовы процедуры
Распределенные Объекты, Программируя Темы описывают механизм, позволяющий приложению Какао вызвать объект в другом приложении Какао (или в различном потоке в том же приложении). Приложения могут даже работать на других компьютерах в сети.
Руководство по программированию XML-RPC и SOAP описывает, как использовать Сценарий Apple и менеджера по корпоративным мероприятиям Apple в OS X для создания вызовов удаленной процедуры с помощью XML-RPC и SOAP (Простой протокол доступа к объектам) протоколы.
Универсальные идентификаторы типов
Универсальный Обзор Идентификаторов типов дает обзор цели, синтаксиса, и использования Универсальных Идентификаторов типов (UTIs), обеспечивает инструкции для принятия UTIs и включает ссылку общего и определенного с помощью системы UTIs.
Готовый к больше?
Ссылочная Библиотека Snow Leopard содержит еще много ресурсов, делающих Вас заданием проще. Для сужения списка ресурсов можно установить фильтры для фокусирований на определенных типах ресурсов (таких как руководства или пример кода) или по определенным темам (таким как пользовательский опыт или управление данными).