このようにネットワーク全体で分散オブジェクトを使用するには、ローカルマシン上のクライアントが接続するiTunesマシン上でサーバーを実行する必要があります。分散オブジェクトはこれを行うための比較的簡単な方法です。
分散通知を使用してiTunesトラックの変更通知を受信することはできますが、これらはローカルマシンにのみ送信されるため、サーバーはこれらのメッセージをリッスンしてからクライアントに通知する必要があります。あなたのtrackChanged:
方法は次のようになり
NSDistributedNotificationCenter* nc = [NSDistributedNotificationCenter defaultCenter];
[nc addObserver:self
selector:@selector(trackChanged:)
name:@"com.apple.iTunes.playerInfo"
object:nil];
:
- (void)trackChanged:(NSNotification*)notification
{
NSLog(@"%@",notification);
//do something with [notification userInfo].
}
おかげで、ロブをあなたはそうのような通知を登録することができます。それは私がローカル側でやっていたのとほぼ同じです。リモートマシンにScripting Bridgeオブジェクトを作成できるので、リモートマシン上にサーバーを作成するよりも簡単な方法があることを期待していました。しかし、私は間違いなくサーバー/クライアントモデルを調べます。 – Jesse