The 2009 Apple Worldwide Developers Conference (WWDC) is just around the corner. Rumors of new iPhone hardware and software are running rampant. One frequently surfaced request (or more accurately, complaint) is the lack of Flash support on iPhone and iPod touch. While I can see why the general public raises that question, I am perplexed when it comes from technology pundits/bloggers and interaction design professionals. Simply put: Flash is ill suited for the touch interface.
Consider the following issues:
1. Rollover does not compute
On a touch interface, touching is clicking and dragging is scrolling. There is simply no rollover event. Unfortunately, more often than not Flash-based interfaces rely heavily on rollover to trigger control mechanism or content delivery. This problem serious undermines the practicality of Flash implementation.
2. No assisted text input and menu selection
To alleviate the inherent restrictions of small screen (and fat fingers), Apple introduced some UI enhancements to improve the usability of touch interface. Two obvious instances are the text field and menu “picker.” Flash programs cannot invoke these assisted UI components, thus making mundane tasks such as menu selection and keyboard control difficult, if not altogether impossible.
3. Non-standard UI can be non-functional
Flash designers for years have been pushing the envelope of interactivity by breaking UI conventions. Some of them are so out of the norm that they are barely usable on a computer. Now imagine running them on a small touch screen. UI anomalies as benign as scrollbars without up/down arrows will be broken, not to mention more serious offenses.
A related issue to non-standard UI is the proliferation of minuscule text and UI components. Yes, they look clean and minimal but are the bane of mobile device users. No one likes repeatedly zooming in and out (plus scrolling around) a page. Since mobile Safari’s double-click-to-zoom function is designed to zoom onto a HTML element (e.g., an <IMG> or a <table>), zooming within a Flash object is likely to require lots of pinching and scrolling.
Look how thin that timeline under Hulu player is. To jump to a different point of the video, you’d need to pinch, scroll, touch, and then pinch again; repeat if you don’t like what you see and want to move again.
5. Flash is a CPU hog
Anyone who’s ever used a CPU monitor knows how processing intensive Flash is. The problem is even more acute for Macs. According to an Ars Technica test, Hulu video consumes 56% of CPU on a Mac Pro. The situation is most likely to be worse on an iPhone. What’s more, there are many badly written Flash programs out there. Unlike the typical iPhone apps, which have to be examined and approved by Apple, rogue Flash programs can wreak havoc on your phone unchecked.
Of course one may argue that Flash publishers can modify their Flash content for iPhone. However, not considering the fact that it’s impossible to redevelop every piece of existing Flash programs, the very idea of device specific development great diminishes the main benefit of Flash — cross platform deployment. This makes one wonder the effectiveness of Adobe’s Open Screen Project, which aspires to provide an uniform environment across platforms. But I digress. The bottom-line is that Flash on iPhone cannot be a priority to Apple and it’s not something to look forward to for end users either.