|Apple's New Phones - The Programmer's Take
|Written by David Conrad
|Wednesday, 11 September 2013
Apple has just announced two new iPhones - a cheap plastic phone designed to conquer the Chinese market and a more expensive piece of hardware with some interesting innovations. What's in it for the app developer.
Of the two phones, the 5S and the 5C, it is the 5S that has the interesting bits from the developer's point of view. The 5C can be summed up as a plastic packaged version of the existing models targeting markets where the iPhone isn't cheap enough to be a real competitor. The 5C is a colorful iPhone with a "headline" price of $99 - however this is the two year contract price. If you want one without a contract, its list price is $599 for the 16GB version. Prices in other markets are yet to be announced.
The 5S, on the other hand introduces at least three new features - a 64-bit processor, a fingerprint sensor and a movement co-processor.
The impact of the 64-bit processor, a 64-bit A7 processor/graphics chip, is simply faster and more responsive system. The downside when any cpu architecture changes is potential re-compiling of code. Apple says that iOS7 have been re-compiled and modified to run as a 64-bit system. There is also a 64-bit version of OpenGL ES 3 to use for what Apple describes as "beyond console-level graphics". The developer tools have been upgraded to include a 64-bit compiler, which will target both 32-bit and 64-bit binaries. However, given the speed increase can be a factor of two and graphics are 50 times faster than the original iPhone, it might be worth a recompile.
The fingerprint sensor sound like a breakthrough, but you have to remember that it isn't the first phone to have a fingerprint sensor - Android devices with fingerprint sensors have been around a while but never really caught on. Even Windows 8.1 has a fingerprint API, which is presumably intended for the next version of Windows Phone.
What matters in this case is the quality of the implementation - does it work and what is the false negative rate? The big disappointment is that the fingerprint sensor only works to unlock the phone and to allow users to buy things from iTunes. Developers aren't going to be given access to it for their own authentication procedures. This is partly understandable from the security point of view. If you create an API to access the sensor sooner or later, usually sooner, someone will figure out how to use it in ways that it was never intended for. As far as security goes, the user's fingerprint is stored locally and not uploaded to any server - a good choice. The sensor lives beneath the home button and makes a very high resolution scan of the sub-epidermal skin layers.
The final new element is the M7 motion co-processor. If you don't know what a motion co-processor is then don't worry because it's not an everyday item. It is a small cpu designed to monitor and process the data from the accelerometer, gyroscope and compass. Exactly what processing goes on isn't clear, but there is also a new CoreMotion API that allows apps to access information to track fitness and training progress. It seems that the API will now report "user level" events such as number of steps in the background and will feed them to your app when it next runs.
So is the 5S the phone as games console, or even as desktop?
If it isn't then the next version will be. Phone performance is improving and without impacting battery life - the 5S claims 40 hours of battery life - and desktop machines aren't getting appreciably faster.
To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, Facebook, Google+ or Linkedin, or sign up for our weekly newsletter.
or email your comment to: firstname.lastname@example.org
|Last Updated ( Thursday, 12 September 2013 )