Feeds

Dilemma meets opportunity: iPhone beta SDKs in review

Will you tread the Cupertino path?

Choosing a cloud hosting partner with confidence

iPhone SDKs are like buses these days, the appear so frequently. Since my introductory piece on iPhone development, Apple has rolled out an initial SDK preview, a second iteration of the SDK (Beta 2) while a third beta followed not long behind. The second beta included the much-anticipated Interface Builder application but Beta 3 actually makes it work.

So what are you getting from Apple? Turns out an interesting bag of technology that comes with some philosophical choices for developers over whether they work with Apple or follow their own path, independent of the company, building iPhone applications.

First, the good news: the iPhone SDK is free to download and is essentially a set of add-in tools and libraries for the existing Xcode development system.

The bottom line is that, with the SDK installed, you can choose whether you want to create iPhone or "regular" Mac applications, all with the same development tools. This is obviously a lot more convenient than using a Cygwin-based toolchain under Windows, which is what I alluded to in my earlier piece.

The SDK includes a cute, on-screen iPhone simulator that you can use to test and debug many iPhone applications directly from Xcode without deploying to an iPhone. Opinions differ about whether it's a simulator or emulator but I'd go with the former.

Xcode generates an x86 application for the simulator that is itself an Intel executable and uses a set of frameworks that provide the same API as the actual ARM executables in the device. In other words, no ARM code is involved during a simulator run.

The new firmware is notionally version 1.2, although it will be rechristened 2.0 when it officially hits the iPhone. At the moment, you can only run 1.2 on the simulator. At least, officially.

Now some bad news. As mentioned, Beta 2 included Interface Builder and offered the ability to visually lay out the various elements of an iPhone application. Sadly, Interface Builder wasn't as well integrated with Xcode as it should have been. If you're still working with Beta 2 and can't figure out how to make things work, look here. But ideally, you should already have upgraded to Beta 3, in which case you'll find that Xcode obligingly adds a MainMenu.xib file to a new project, and double clicking it launches Interface Builder, just as a Cocoa developer would expect.

Another issue you might run into - I did - is that if you've previously downloaded the sample iPhone applications, they will no longer work after you install a new beta.

This happened to me when I went from Beta 1 to Beta 2, and again when I went to Beta 3. This is primarily due to API changes. The solution is to simply re-download the updated samples from the Apple web site. You can find an official list of API changes between Beta 2 and Beta 3 by clicking here. The previous delta document - Beta 1 to Beta 2 - has disappeared, so if you've written a lot of Beta 1 code that no longer compiles, you're on your own.

Apps in store

Technical gotcha's aside, the commercial and legal limitations are much more interesting. As you'll no doubt have heard by now, Apple is introducing the App Store with the release of the 2.0 firmware.

Think of it as iTunes for applications. From their iPhone, users will theoretically be able to browse, purchase and download third-party applications with (presumably) a mechanism for alerting the user when an updated version of an application becomes available.

Apple will get 30 per cent of the cash made on a sale, with the remainder going to the developer. That's not too unreasonable when you consider that a small developer can forget about the hidden costs of web hosting, publicity and credit card fees - everything is done through App Store.

To be able to sell applications in this way, you have to register as an iPhone developer, which costs $99. Crucially, if you don't register as a developer, you won't even be able to deploy an application to a phone running the 2.0 firmware. This is because a registered developer receives a special key that the compiler uses to digitally sign applications. If the firmware doesn't find a valid signature within the application, then it won't run.

Choosing a cloud hosting partner with confidence

More from The Register

next story
Download alert: Nearly ALL top 100 Android, iOS paid apps hacked
Attack of the Clones? Yeah, but much, much scarier – report
Broadband sellers in the UK are UP TO no good, says Which?
Speedy network claims only apply to 10% of customers
Virgin Media struck dumb by NATIONWIDE packet loss balls-up
Turning it off and on again fixes glitch 12 HOURS LATER
Yahoo! blames! MONSTER! email! OUTAGE! on! CUT! CABLE! bungle!
Weekend woe for BT as telco struggles to restore service
Fujitsu CTO: We'll be 3D-printing tech execs in 15 years
Fleshy techie disses network neutrality, helmet-less motorcyclists
Facebook, working on Facebook at Work, works on Facebook. At Work
You don't want your cat or drunk pics at the office
Soz, web devs: Google snatches its Wallet off the table
Killing off web service in 3 months... but app-happy bonkers are fine
prev story

Whitepapers

Choosing cloud Backup services
Demystify how you can address your data protection needs in your small- to medium-sized business and select the best online backup service to meet your needs.
A strategic approach to identity relationship management
ForgeRock commissioned Forrester to evaluate companies’ IAM practices and requirements when it comes to customer-facing scenarios versus employee-facing ones.
10 threats to successful enterprise endpoint backup
10 threats to a successful backup including issues with BYOD, slow backups and ineffective security.
Reg Reader Research: SaaS based Email and Office Productivity Tools
Read this Reg reader report which provides advice and guidance for SMBs towards the use of SaaS based email and Office productivity tools.
Getting ahead of the compliance curve
Learn about new services that make it easy to discover and manage certificates across the enterprise and how to get ahead of the compliance curve.