4 Stimmen

Benachrichtigung mit NSDistributedNotificationCenter für iTunes bei Änderung der Songinformationen

Ich weiß, Sie können [iTunesDNC addObserver:self selector:@selector(updateInfo:) name:@"com.apple.iTunes.playerInfo" object:nil]; um jedes Mal eine Benachrichtigung zu erhalten, wenn der Player den Song wechselt/anhält/spielt/etc. Aber was ich brauche, ist eine Benachrichtigung jedes Mal, wenn Informationen in iTunes geändert werden (z. B. Songtitel geändert, Text geändert, Künstler, etc.)

Irgendwelche Vorschläge? Ich bin ziemlich sicher, dass ich nur ändern müssen com.apple.iTunes.playerInfo zu etwas anderem, das nicht playerInfo .

Ich weiß, dass es möglich sein sollte, denn es gibt eine App namens SongGenie die ihre Informationen ändert, wenn Sie die ID3-Tags eines Songs in iTunes bearbeiten oder Liedtexte hinzufügen.

Ich danke Ihnen!

13voto

Francis McGrew Punkte 7206

Ja, es gibt einen Weg. Jedes Mal, wenn die Songinformationen geändert werden, gibt iTunes eine " com.apple.iTunes.sourceSaved "Benachrichtigung, deren userInfo-Wörterbuch die Bibliothek des Benutzers ist.

Sie können diese und andere Benachrichtigungen, die iTunes sendet, überprüfen, indem Sie sich jede Benachrichtigung anhören, die im Distributed Notification Center veröffentlicht wird.

 [[NSDistributedNotificationCenter defaultCenter] addObserver:self
                                                  selector:@selector(allDistributedNotifications:)
                                                  name:nil
                                                  object:nil];

- (void) allDistributedNotifications:(NSNotification *)note 
{
    NSString *object = [note object];
    NSString *name = [note name];
    NSDictionary *userInfo = [note userInfo];
    NSLog(@"<%p>%s: object: %@ name: %@ userInfo: %@", self, __PRETTY_FUNCTION__, object, name, userInfo);
}

0voto

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X