Как скрыть окно процесса UIAgent с какао - PullRequest
0 голосов
/ 16 июня 2011

У меня есть приложение UIAgent с одним окном.Я хочу скрыть / показать это из другого приложения. Как мне сделать это с какао?Кажется, hide / unhide методы NSRunningApplication не влияют на процессы UIAgent.

Заранее спасибо

1 Ответ

1 голос
/ 16 июня 2011

Я решил это с NSDistributionNotifications. В приложении UIAgent я добавляю наблюдателя в @"QuitProcessNotification" (любое другое имя):

[[NSDistributedNotificationCenter defaultCenter]
                             addObserver:self selector:@selector(quit:) 
                             name:@"QuitProcessNotification" 
                             object:@"com.MyCompany.MyApp" 
                             suspensionBehavior:NSNotificationSuspensionBehaviorDeliverImmediately];

Обратный вызов выглядит так:

- (void) quit:(NSNotification *) notification
{
    [NSApp terminate:nil];
}

В основном приложении: Отправка уведомления:

[[NSDistributedNotificationCenter defaultCenter]
                     postNotificationName:@"QuitProcessNotification" 
                     object:@"com.MyCompany.MyApp"
                     userInfo: nil /* no dictionary */
                     deliverImmediately: YES];

Убедитесь, что параметр object действительно является идентификатором пакета приложения-отправителя.

...