Cross Platform Leverage: Not about write once run everywhere, not about native vs. Web
Posted by Dion Almaer 10 months ago on apps editorial mobile native web
The Web is a cross platform solution that worked. We have argued that the Web was a huge reason that Microsoft lost its dominance, and the first “post PC” era was that of the Internet and the Web. It was at that point where life wasn’t just about Office and productivity apps. Google and Yahoo! and AOL and eBay and …. mattered more, and you could access them through a browser on any platform.
As we see app dominance have a massive impact with the mobile ecosystem boom, we see people wondering if the Web can step up again. Sometimes people think that means a write-once-run-everywhere solution where you build a Web app that runs on a variety of platforms. This can work for some subset of applications. People love to pit “web vs. native”, but if you look at what is being bought out there, there is much more “native WITH Web”.
I did some incredibly unscientific “research” with my friend grep. I looked through the iOS apps that I have on my machine, looking for various methods that can be associated with using a Web view:
dion@laptop [~/Music/iTunes/Mobile Applications]$ grep UIWebView *.ipa |wc -l 205 dion@laptop [~/Music/iTunes/Mobile Applications]$ ls -al *.ipa |wc -l 415 dion@laptop [~/Music/iTunes/Mobile Applications]$ grep loadData *.ipa |wc -l 89 dion@laptop [~/Music/iTunes/Mobile Applications]$ grep loadHTMLStrin *.ipa |wc -l 19 dion@laptop [~/Music/iTunes/Mobile Applications]$ grep loadRequest *.ipa |wc -l 67
You have to take it all with a grain of salt. Who knows how the UIWebView is being used (e.g. maybe it is on the about screen). But, it definitely feels like a fair number of native apps are using Web technology to some extent.
One interesting example of this appears to be Facebook. When Joe Hewitt created the first version of the application he created a lot of infrastructure for the application, all of which later became Three20.

At some point though, the news feed itself appears to have been changed to use Web technology. If you look at the new mobile website and compare it to the iOS application, it appears to be the same (see above). I am not sure if the newsfeed is one WebView, or if multiple WebViews are used and cached (as someone has claimed), but either way, much leverage has been gained. The Android Facebook application was just rev’d and it contains the same looking feed.
All the benefits of the Web deployment model are now in place. Facebook can make one change, and all of the clients are updated. No permission needed. The timing is up to you. Simple A/B testing is easily in reach.
What if you want some native spread into your Web though? Well, that can be done in various ways too. The UI can talk back to native land via a JavaScript bridge, and then suddenly the “share” button on the Web view is calling a native share component.
We love to make Web and native a black and white argument. In fact, there is a lot of grey out there. The Web has a lot of advantages, as does native, and often the solution that right solution lies in combination.