Why Apple should not support Flash on the iPhone - for now

I had this strange problem in my Cocoa app today. There is a WebView in which I am showing some Flash content (using a third party graph generation utility). Whenever I ran the app, as soon as I accessed the screen that had this WebView, the app would crash!

I used the debug mode and went through the code step by step to figure out where the problem was. Surprisingly, the app worked fine when I was in debug mode! I tried different ways and means of accessing the screen and the content. No problem in debug mode. I then ran the app in Run mode. Crash again!

I was perplexed. What could be the problem? I looked at the logs. There was a "Debugger() called" every time the app was crashing. Since Google is my friend, I used it.


Found the cause. There was a blog post by a Stinkbot that outlined the problem:

"Apparently, in the new Flash 10 release, somebody left a call to Debugger() in the code. This is in the final, non-beta Flash 10. I’d expect calls to Debugger() in a beta, but to leave that in a final release does not inspire confidence in the rest of the code."

I had to tell Xcode, my IDE not to stop on Debugger() (In Xcode, Run Menu -> Stop on Debugger() -> uncheck this). This fixed the problem. Well, a workaround at least.

Steve Jobs has said that Flash is buggy and leads to Macs crashing. That's the reason they are not supporting Flash on the iPhone and the iPad. I can see what he's saying. I totally agree with him. Heck, even Jayadeep Thum (who has nothing but disdain for Apple and anyone else who makes money out of writing software, ok, ok just kidding JD!) has said, "I am with Steve on Flash. Flash is buggy. Especially on Linux. Adobe should fix it."