Re: Why does there have to be an app for that?
Money and Control (which = more money).
There are technical considerations for sure but largely it is money. If all apps were implemented in html and accessible via a browser then whats to stop you switching between ecosystems (having to repurchase apps and media can make a huge impact on such a decision). If you could just go to a url then how are apple \ ms \ google going to collect their 30% ? :)
IIRC didn't Apple say that Safari was the only app you should ever need when the iphone originally launched? Or something that that effect? Then they saw the money to be made, and fair game to them they did it well. That and technically there were arguments against 'the web' for both code efficiency and abilities.
I get as annoyed as anyone over the ridiculous 'there's an app for that' sagas when places like banks pour money into apps and leave their web stores relatively poorly tended, especially for mobile users. A great many companies either take advantage of the 'app' phenomena or are taken advantage of by people selling them apps when frankly a decent website would cover all their needs and provide coverage to users of pretty much all ecosystems with one implementation. Never underestimate the power of a good powerpoint presentation to get a bunch of desk warmers to spend money to get home with the downies.
There is also exclusivity, there seems to be a trend of certain companies only supporting one or the other, there are quite a few instances where only the iphone gets the app. Quite possibly because of a higher propensity to buy coupled with a large installed base etc, the cynic in me believe that in the larger cases it is a case of advertising money trades hands for exclusivity.
Technically there are strong arguments, not just over functionality and offline access (although in some instances caching could be used for offline game playing etc) but also control of development.
It would be a great to see a wave of well coded sites replacing badly coded apps for stuff like banks, airlines etc. It wouldn't take up as much space on phones, especially lower end or older phones and they could devote all their funding to one implementation. They wouldn't have to replace apps, just refocusing away from having an app for the sake of it.
FWIW I apologise in advance if any of the above seems biased towards any ecosystem, I really don't care for any one system over another and given my own way I would probably still be on Windows Mobile!