| By Kevin Hoffman | Article Rating: |
|
| March 14, 2008 09:45 AM EDT | Reads: |
6,972 |
So, to start with, I need to preface this blog post with a notice: The contents of the SDK as well as the experiences that occur while using the SDK are confidential. Yes, I am one of those crazy-weird people who read EULAs and license agreements. When you agree to installing the SDK, you agree to those terms. Anybody posting information about the innards of the SDK is violating the agreement and subject to assault by massive teams of rifle-toting SWAT guys.
So, the opinions and information I post here will be based on information in the public domain, such as Steve Jobs' keynote and information you can find on Apple's website without logging in using your ADC or iPhone Developer credentials.
So, here's what it looks like you can do with the SDK on the iPhone:
- Full access to low-level BSD sockets. I presume there are higher-level abstractions available, but... think about it, you've got SOCKET access on an iPhone. While you can get sockets on a Windows Mobile phone... what's the point? :)
- Unix. Just about anything you can do on a trimmed down Unix kernel you can do on your iPhone. That sets off every single geek endorphin in my body.
- Core Services. This was mentioned, looks to be some layer of services akin to Foundation on Leopard.
- Quartz. This one requires an obligatory OMFG. Quartz, the single coolest 2d compositional rendering engine on the planet, and its available to developers on the iPhone.
- OpenGL ES. Spore. Super Monkey Ball. On the iPhone. 'nuff said.
- SQLite. Full flat-file database library/API right on the phone.
- Distribution and e-Commerce. 70/30 split, you keep 70% Apple keeps 30%. Apple handles the distro for you and if your app gets approved, it shows up as a possible purchase on every single iPhone in the world.
So, let's run this down again. When developing native applications for the iPhone, you get virtually unlimited access to the Unix subsystem and networking stack (though I've been told there's no VoIP on cell net, only WiFi. Similar, quite reasonable, limitations may also exist). You get to write your applications in Objective-C and use a Cocoa-like framework library. You get access to what is, in my opinion, the most powerful 2D graphics API available - Quartz. You get access to OpenGL on the iPhone for full 3D graphics and animation at what (from the demos) appears to be an incredibly good frame rate. Any app you make that doesn't violate the list of exceptions will be held, distributed, and sold by Apple. You get 70% of the cut. If you release an update to the application, iPhone users will be able to download an update to that application directly from their phones without even having to tether with iTunes!!
When I first heard about the iPhone SDK, I was both excited and a little worried. You see, I've been using the .NET Compact Framework on and off for quite some time, and I did development for PalmOS before that (#(@)#!@# little-endian<->big-endian conversions can bite me!). Quite possibly one of the coolest things about the .NET Compact Framework is that you can create an application and deploy it to any Windows Mobile device. If you create an installer that runs on a Windows PC, it will use ActiveSync and get installed on the associated Windows Mobile device. I was worried that the iPhone SDK would create an experience that was more difficult for developers to get stuff on the phone.
I couldn't have been more wrong, and I've never been happier to have one of my assumptions prove incorrect. Instead of developers building an installer and then figuring out how to host the installer and where to put it and how to charge for it, developers just give the single App file to apple, tell them about the app and how much to charge, and that's that. Better yet, iPhone users don't have to use their PCs to download and install an app and then tether up to install it. Using the App Store (scheduled in June as part of the iPhone OS 2.0 release), iPhone users will be able to browse, buy, download, and install applications all from their iPhone without ever having to tether or involve a PC. That folks, is what a mobile "digital lifestyle" device experience should be like.
I can't wait until June to find out what kinds of amazingly cool stuff people are making for the iPhone and the iPod touch. I will predict, however, that people are going to find some insane things to do with the accelerometers and the Core Location services, as well as OpenGL ES.
Published March 14, 2008 Reads 6,972
Copyright © 2008 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
About Kevin Hoffman
Kevin Hoffman, editor-in-chief of SYS-CON's iPhone Developer's Journal, is Technical Chair of iPhone Developer Summit. He has been programming since he was 10 and has written everything from DOS shareware to n-tier, enterprise web applications in VB, C++, Delphi, and C. Hoffman is coauthor of Professional .NET Framework (Wrox Press) and co-author with Robert Foster of Microsoft SharePoint 2007 Development Unleashed. He authors The .NET Addict's Blog at .NET Developer's Journal.
![]() |
Pete 03/13/08 11:03:08 AM EDT | |||
Not letting people comment on their iPhone SDK is rediculous. They puplish this thing to the world and they don't want anybody to talk about the cool inner working of it. That seems crazy to me! |
||||
![]() |
Jim Johnson 03/13/08 10:54:47 AM EDT | |||
Hey Kevin, Does the iPhone SDK allow developers to SYNCHRONIZE their iPhone applications with desktop applications on the Mac? For example, one of our favorite things about the Treo is the 3rd-party programs we can purchase to synchronize our desktop Quicken files with our Treo's Pocket Quicken; our desktop memo pad to our Treo's memo pad; our desktop database program to our Treo's memo pad; etc. Does the iPhone SDK allow any of this type of syncing ability? Thanks! |
||||
- iPhone Developer Summit Extended To June 22-23 By Popular Demand
- Ulitzer’s Amazing First 30 Days in Public Beta
- iPhone OS 3.0 Hits the Streets Today
- Will Ulitzer Dominate News Content on The Web? -Gartner
- Ulitzer Responds to Published Reports
- Twitter is the Dumbest Thing I Have Ever Seen in My Life
- SOA, Cloud Computing & Live Mesh: A Day in the Life of Ivan Eyepack 2009
- Oracle + Sun Will Be Like the iPhone: Larry Ellison
- What Hardware Changes Will iPhone OS 3.0 Bring?
- Steve Jobs & the New iPhone?
- Xpress Suite Adds Automatic Java to iPhone Conversion
- iPhone Developer Summit Extended To June 22-23 By Popular Demand
- Apple Gets its Man
- Ulitzer’s Amazing First 30 Days in Public Beta
- iPhone OS 3.0 Hits the Streets Today
- iPhone 3.0: Usability Tweaks and New APIs
- Will Ulitzer Dominate News Content on The Web? -Gartner
- Quickoffice Unveils Editable Office Application for the iPhone
- How to Cut & Paste from a PowerPoint Doc to Word on an iPhone
- iBank Mobile Announces iPhone App for Tracking Personal Finance
- Sun Blew its "iPhone" Java Opportunity to AJAX
- AJAXWorld Conference Adds "iPhone Developer Track"
- iPhone Will Make Mobile AJAX and Web 2.0 Happen
- Why Build Applications for the iPhone and iPod Touch?
- Designing For the "iPhone" Is a Refreshing Experience
- New Column: A Geek's Bookshelf
- Apple U-Turns on iPhone: Third-Party Developers To Get SDK in 2008
- Vodaphone To Present iPhone Developer Session at AJAXWorld
- Building an iPhone Application with Adobe AIR
- Why Is iPhone Better? Here's My Story...






































