2015-08-25 4 views
0

Я пишу приложение, которое открывает другое приложение. Другое приложение является агентом, поэтому пользователь ничего не видит в доке.Активировать другое приложение - OSX

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

Кто-нибудь знает, возможно ли это, или у кого-нибудь действительно есть решение?

Буду признателен за каждую помощь, приветствия.

+0

Это * Агент запуска *? Отобразите содержимое конфигурации .plist. – trojanfoe

+0

Второе приложение имеет приложение - это агент - ДА в его plist, другой - просто нормальное приложение. –

ответ

1

Итак, ваш вопрос в том, как активировать другое приложение? NSRunningApplication имеет -activateWithOptions: для этой цели. Что-то вроде этого:

NSRunningApplication *otherApp = [NSRunnungApplication runningApplicationWithBundleIdentifier:…]; 
[otherApp activateWithOptions:0]; 
+0

Да, спасибо за подсказку, это хороший момент для начала :) –

+0

Не могли бы вы объяснить, как использовать bundleIdentifier? Я не могу заставить это работать! –

+0

Вы должны знать идентификатор вашего агента? –

Смежные вопросы