Conclusion:
Check out http://dougscripts.com/itunes/ and using the Apple Script Editor (installed by default at Applications/AppleScript/Script Editor) you can create scripts, use the built in documentation and get to grips with making iTunes do what you want, or indeed any other Apple application.
I have a few ideas I want to impliment into iTunes to add various functionalities so I had a look on http://developer.apple.com to see how to develop plugins for iTunes. I know it is possible as I have seen various different plugins a bout for a while now, for example Qloud.
What ever I searched for and what ever page I went to I could not find a relevant SDK or even any information on developing iTunes other than those listed on this page (http://developer.apple.com/sdk/), none of which are what I am looking for.
So I sent Apple an email:
Where can I download the iTunes SDK or anything that will enable me to develop plugins for iTunes 4.7+ under OS X 10.4?
The only reference to iTunes I can find on http://developer.apple.com/sdk/ is https://connect.apple.com/cgi-bin/WebObjects/MemberSite.woa/wa/getSoftware?bundleID=19923
Surely there must be information available - why is it so hard to get to?
Awaiting your reply
Eltonone
From http://developer.apple.com/sdk/ there are no links to any pages that discuss iTunes development. Infact, navigating to http://developer.apple.com/mac/ (The Mac Development Centre) everything is about Leopard with nothing on previous Os’s. What happened to all the people using pre-10.5 Apple Operating Systems? Back date compatibility is essential and in the past has been important to Apple, what a shame iFad sales are now more so.
I found this (http://developer.apple.com/referencelibrary/GettingStarted/GS_AppleApplications/index.html) which pretty concisely dashes my hopes of developing anything for iTunes without frist fully understanding how iTunes was built and how it functions. Why no API? GRRRRRRR Apple.
Getting Started with Apple Applications
Technology Overview
Apple publishes a variety of applications for the Macintosh platform, many of which are distributed free with Macintosh computers.
If you are a plug-in developer, you can create a visual effect plug-in for either the Macintosh or the Windows version of iTunes, Apple’s music management software, that presents visual effects while music is playing. Plug-ins for iTunes are written in C.
If you are a content developer, you can create new widgets for Dashboard, an environment designed to keep useful information at your fingertips. Dashboard widgets are built using standard web technologies, like HTML, CSS, and JavaScript.
If you are a hardware developer, you can build XML printing preset files for iPhoto, Apple’s still photo management software, to enhance its compatibility with your printer. Preset files for iPhoto are written in XML.
If you are an application developer, your application can:
- Access the data in AddressBook, Apple’s centralized database for the user’s contact and other personal information
- Import and export projects to and from Final Cut Pro, Apple’s professional video editing software, using the Final Cut Pro XML Interchange Format
- Exchange documents with Keynote, Apple’s presentation software, using the Keynote XML File Format (APXL)
All I want is the information on the currently playing or most recently played song, including physical location. Last.FM can get this information; how is it doing it? iTunes writes the currently playing track to a file for history, so I can get that information.
I want to be able to control when I excecute my function, either by adding a button to iTunes (which seems impossible without a lot more learning) or maybe with a system wide keyboard shortcut.
Hmm, a work around is beginning to take shape…
Seems that AppleScript is what I need to use (check out some of the stuff you can do with it http://dougscripts.com/itunes/). It would have been useful to see some information at some point while searching http://developer.apple.com that made it clear what you can do and what you need to do it in terms of both creating new applications and adding additional functionality to existing ones under OS X. I’ve been aware of AppleScript for some time, I just didn’t realize that it was the best solution for what I want to do and some pointers on all this on the Apple site would have been a great help and made the learning process a great deal less illusive.