Ich versuche, eine Anwendung für die schnelle Steuerung von iTunes zu schreiben. Aber beim Initialisieren der Anwendung gibt ein Objekt vom Typ AnyObject
zurück, muss aber iTunesApplication.Swift und scriptingbridge Objekt Initialisierung
Dieses Objekt reagiert nicht auf Methoden und Variablen von iTunes. Wer weiß, wie es funktioniert?
var iTunes = SBApplication.applicationWithBundleIdentifier("com.apple.iTunes")
Der iTunes.h Header enthält auch Klassen, die ich zugreifen müssen aber nicht. Diese Klassen verursachen einen Kompilierungsfehler, als ob sie nicht in einer iTunes.h deklariert sind.
Warum ist das passiert mir noch nicht klar ist.
Die ganze Liste von Klassen, die eine iTunes.h in über @class deklariert sind:
@class iTunesPrintSettings, iTunesApplication, iTunesItem, iTunesAirPlayDevice, iTunesArtwork, iTunesEncoder, iTunesEQPreset, iTunesPlaylist, iTunesAudioCDPlaylist, iTunesLibraryPlaylist, iTunesRadioTunerPlaylist, iTunesSource , iTunesTrack, iTunesAudioCDTrack, iTunesFileTrack, iTunesSharedTrack, iTunesURLTrack, iTunesUserPlaylist, iTunesFolderPlaylist, iTunesVisual, iTunesWindow, iTunesBrowserWindow, iTunesEQWindow, iTunesPlaylistWindow;
Zum Beispiel in Objective - c Sie so etwas wie diese verwenden würden, um den aktuellen Titel
iTunesApplication *iTunes = [SBApplication applicationWithBundleIdentifier:@"com.apple.iTunes"];
NSLog(@"Current song is %@", [[iTunes currentTrack] name]);
Aber ich kann nicht ein Äquivalent in schnellen bekommen zu arbeiten.
Wenn Sie 'println (" \ (iTunes.className) ")' es gibt "ITunesApplication" – markhunte
Compiler-Fehler - "AnyObject hat kein Mitglied namens className" –
Ja. Das habe ich bei meinen Tests gesehen. Ich habe darauf hingewiesen, dass obwohl es diesen Fehler gibt, es als ITunesApplication eingestuft wird. Kann ich Ihnen auch vorschlagen, dass Sie Ihrer Frage mehr Details hinzufügen? über das, was Sie versucht haben, dies zu lösen und wie Sie die iTunes.h-Datei usw. importieren. Ich weiß, dass ich erwartet hatte, dass xcode eine Header-Importdatei hinzufügen würde, aber ich bekam nie eine. – markhunte