Even before iPhone came into market, mobile apps were there. But with iPhone’s release, a new smartphone era was launched. Initially iPhone did not allow third party native-code apps to be installed; developers who wanted to add new content had to do so using HTML web apps running in the phone’s browser. But in 2008, with the coming of App Store, came the opportunity to develop native apps in Objective C. Still developers had only one platform, one device and a small set of OS versions. But when Android was launched in 2008, the new platform gave way to an explosion of devices and now Android devices collectively account for over 50% of worldwide smartphone sales.
Suddenly, the idea of developing a single app that runs on all platforms became the new goal to be achieved.
New Cross-Platform compilers were developed, which could link various platform SDKs. Then came HTML5 and HTML5 hybrid apps which allowed increasingly rich client-side experiences such as local storage, geolocation, audio and video, offline working, accelerated graphics operations and more.