All about iPhoneInterface

All about iPhoneInterface


We’ve gotten iPhoneInterface to compile and run in the lab (er, my living room). Kudos to the #iphone team; this is pretty cool.

In its current form, it doesn’t look like it will compile on Mac OS X (Update: the latest version compiles fine on Mac OS X!). For the moment, it’s calling directly into the iTunesMobileDevice DLL that you’ll only find on a Windows PC. If you take a look at the #defines in the source code, you’ll see that a lot of the action is currently happening in WIN32 regions. But that’s likely to be only temporary; this is just a guess on my part, but I imagine that they are looking to completely eliminate iTunesMobileDevice.dll, once they figure out what messages it’s sending to the iPhone.

So what can iPhoneInterface do? Essentially, it can do anything to your iPhone that iTunes can do to it: activate it, deactivate it, manipulate files that are in the flash memory (not in the OS install image, though) such as photos, music, etc. You can also start services, but you can’t install and execute arbitrary binaries yet.

This is a wonderful achievement, and a beautiful hack. If you’ve got the time and motivation, you can download the source code, compile, and run it. But it’s not trivial to do this; you’ll need a few things:

  • A Windows PC
  • Dev-C++ – Link
  • iTunes 7.3 installed
  • The QuickTime 7.1 SDK from Apple (you’ll need an ADC membership for this; hopefully the free ADC membership includes it)
  • And of course, the source code to iPhoneInterface

I’m not linking directly to the source code because the #iphone crew has asked journalists, bloggers, diggers, etc. to not post direct links to the website. Anyone who’s been following the project close knows that the site has been up and down because high-traffic sites keep linking to it. So I leave you with the IRC channel info: #iphone @ Make your way there with your favorite IRC client and check the motd (message of the day). If the web site is up, there will be a link to it. If not, read the messages that go by, and you’ll find an update with more information soon.

Happy Hacking!

Discuss this article with the rest of the community on our Discord server!

I'm a tinkerer and finally reached the point where I fix more things than I break. When I'm not tinkering, I'm probably editing a book for Maker Media.

View more articles by Brian Jepson


Ready to dive into the realm of hands-on innovation? This collection serves as your passport to an exhilarating journey of cutting-edge tinkering and technological marvels, encompassing 15 indispensable books tailored for budding creators.