>They cant. Simply people buy what people want to buy.
Not really: Google already has a dominating market position and people can only buy what is available.
In retrospect the current situation was inevitable as it was with Microsoft and Windows: a natural monopoly tends to emerge around an OS because something akin to the 'network effect*': there is a self-amplifying feedback loop where more application software for an OS attracts more users which in turn attracts more developers to the platform which means more applications which means more users which means more developers which means more applications which ... Only this time the situation is more complex and hence worse, because Android is "free" (and even nominally "open"**) i.e. Google pays for it with its ad revenues which means that a competitor with anything resembling a level playing field cannot emerge unless it somehow manages to put together a similar tangled web of mutually supporting services and revenue sources from the ground up which might be nominally possible, but isn't going to happen in practice.
The trillion dollar question - an elegant answer to which would also guarantee a Nobel price in economics - is how to tackle a market failure like this.
* originally - I seem to recall - from telephone networks where the value of such a network to the user depends on the number of other users (to talk to) and so one network will end up as a monopoly for which it is practically impossible to create competition from scratch
** in reality it is neither free or open any more: ultimately it is paid by consumers with both loss of privacy and the price of advertising baked in the price of products and services, also Google has actively perverted the original concept of an open platform by making apps depend on their proprietary SW components and services (most importantly the Google Play app store which even in isolation tends towards a natural monopoly, again, because of the network effect: more apps in Google Play (exclusively) -> more users of Google Play -> more developers using Google Play (exclusively) -> more apps in Google Play (exclusively) -> ... )