Наблюдение за распределенными объектами в какао - PullRequest
0 голосов
/ 16 марта 2012

Я пытаюсь наблюдать изменения iTunes в локальной сети.У меня есть объект моста сценариев и я могу передавать ему команды, но для того, чтобы узнать какую-либо информацию, я должен опрашивать его.Я думал, что распределенные объекты могут быть решением, но я не уверен, можно ли таким образом наблюдать какое-либо из значений.Кто-нибудь имел успех с этим?

1 Ответ

0 голосов
/ 17 марта 2012

Чтобы использовать распределенные объекты в сети таким способом, вам понадобится сервер, работающий на компьютере iTunes, к которому подключается клиент на вашем локальном компьютере.Распределенные объекты - это относительно простой способ сделать это.

Вы можете прослушивать уведомления об изменениях дорожки iTunes с помощью распределенных уведомлений, но они публикуются только на локальном компьютере, поэтому вашему серверу необходимо их прослушать, а затемуведомить клиентов.Вы можете зарегистрироваться для получения уведомлений следующим образом:

NSDistributedNotificationCenter* nc = [NSDistributedNotificationCenter defaultCenter];
[nc addObserver:self
       selector:@selector(trackChanged:)
           name:@"com.apple.iTunes.playerInfo"
         object:nil];

Ваш trackChanged: метод будет выглядеть следующим образом:

- (void)trackChanged:(NSNotification*)notification
{
    NSLog(@"%@",notification);
    //do something with [notification userInfo].
}
...