Reg comments6

Go native with iPhone development

Baby steps

There are various ways of getting the application bundle across to your iPhone. I use a freeware Secure FTP (SFTP) client called Cyberduck but you could do the same job with - for example - a command-line SSL connection from a PC or Mac. Place your application bundle into the /Applications directory on the iPhone.

There's one other important step: before launching the application, set the execute bit on the executable itself, not on the bundle folder. From the command line - there's even a tiny terminal emulator for the iPhone - you'd just type "chmod +x Hello". Cyberduck has a GUI interface for doing this.

If you now go to Springboard - the iPhone's icon-based Finder application - you'll hopefully see the icon for your new application. Click it and with any luck, you'll see the Hello World application in all its glory.

There are a couple more things you should know. Firstly, to get Springboard to display a nice custom icon for your application, place a 60x60 pixel image, icon.png, in your application bundle. Restart Springboard, and it should appear.

Finally, you'll notice that when your program starts, you momentarily see an unpleasant, blurred image similar to the OS X default application icon. This is Springboard's way of saying: "You need a Default.png file!"

Whenever Springboard launches an application, it looks for this inside the application's bundle. If found, the image is slapped onto the iPhone screen before the new application starts to run. It feels as if the application starts much faster than it actually did, because the expected program background appears almost immediately. Sneaky, huh?

To exploit this feature, create an image (320x460 pixels) appropriate for your application, name it Default.png and place it in your bundle. If you simply want to disable the blurred default image, even a one pixel high, one pixel wide image will suffice.

Wrapping It up

That is iPhone development at its simplest. What I haven't covered, of course, is the nitty gritty of building a native iPhone application. Coming ahead of full tooling and a properly supported, Apple-backed development environment, though, this should give you the basics and get you thinking.®

Sign up to our Newsletter

Get IT in your inbox daily

Biting the hand that feeds IT © 1998–2017