iPhone Web Development

I broke down and got my 8gig iPhone on Tuesday. I have been using it pretty heavily and in just a sec, I will start with my list o’ let downs. But first, I gotta say that whoever designed the Optimizing Web Applications and Content for iPhone page from Apple has obviously not done a lot of open-source or ANY development for that matter. Yes, it is good content, BUT This may or may not be one of the weak links for apple because there is really no organization to the content, important bits of information are scattered here an there, and frankly for something “so revolutionary” - they are not supporting the people who will make or break this thing (us - the developer) with good documentation very well. It honestly looks like they threw this together in a few hours/days. OK, on to the list….
Safari keeps crashing
I have been trying to use google pretty heavily for Analytics, Adwords, Reader, etc… Although you can’t view any Flash through the iPhone’s Safari web browser, you can view all graphs in Google Analytics by exporting to pdf. So a few clicks into my Google apps usually leads to Safari blowing up and taking me back to the main iPhone screen.
No Flash, SVG, Java applets or anything other than Quicktime supported media (listed below…)
MIME type Description Extensions
audio/aiff AIFF audio aiff, aif, aifc, cdda
audio/x-mp3 MP3 audio mp3, swa
audio/x-m4a AAC audio m4a
video/x-m4v Video m4v
video/3gpp 3GPP media 3gp, 3gpp
audio/x-m4b AAC audio book m4b
audio/mpeg MPEG audio mpeg, mpg, mp3, swa
audio/x-mpeg MPEG audio mpeg, mpg, mp3, swa
audio/x-wav WAVE audio wav, bwf
audio/amr AMR audio amr
audio/3gpp 3GPP media 3gp, 3gpp
audio/x-m4p AAC audio (protected) m4p
audio/x-aiff AIFF audio aiff, aif, aifc, cdda
audio/mpeg3 MP3 audio mp3, swa
audio/mp3 MP3 audio mp3, swa
video/quicktime QuickTime Movie mov, qt, mov, qt, mqv
audio/x-mpeg3 MP3 audio mp3, swa
video/3gpp2 3GPP2 media 3g2, 3gp2
video/mp4 MPEG-4 media mp4
audio/mp4 MPEG-4 media mp4
audio/wav WAVE audio wav, bwf
audio/3gpp2 3GPP2 media 3g2, 3gp2

JavaScript execution is limited to 5 seconds for each top-level entry point. If your script executes longer than 5 seconds, an exception is raised.
I don’t see this as being a huge issue, but I guess it depends on how complicated your .js is. Anything longer than a 5 sec. javascript animation is pretty bad IMO. I’m not sure what else in the confines of an iPhone app would take longer than the alotted 5 seconds.
If you’re serving up video, you better make it clear for the ones who are on EDGE opposed to WI-FI.
Almost like the old days of a split screen website with a “Flash” or “HTML” version of the site. Although this won’t be as bad because it is just video, not the entire layout of your site.

Other than a few bugs, and I would be stupid not to expect any, I love the iPhone and the concept of a standardized web browser! yeah! It has alot of cool stuff and has TONS of potential. So, here are the main things you can do in a web page to interact with the iPhone: (hold your oh’s and ah’s for the end please ;)

Call a number: 1-408-555-5555

Send a email: John Frank

A location on the embedded Google maps app: Cupertino

Or driving directions: Directions

I know, I know, so much to choose from right? Don’t get to crazy all at once and right a mailto app ;). But seriously, I guess there are some cool things one can do to make full use of the integration features. I have been trying to think of a cool mash-up and I’m thinking maybe something with IPTV and quicktime conversion, or using slimserver to serve up what you can’t store on the 8gig limit. Maybe startup a slimserver directory using google maps??? Yeah - maybe I should think on this one a little longer.