I don't like the idea of advertising in the OS. I don't like the idea of advertising in any software. But the prevailing opinion is that software, not being tangible, isn't worth anything. It's a race to the bottom, and it's the professional software developers who are being squeezed.
So what should we do? Put advertising, however unwanted, in the software that we write? Starve? Or are users going to start ponying up and paying for the tools that they use?
The free model works for Apple because Apple sells hardware, which pays for all that development work - with cash to spare. The free model works for Google because they can sell data scavenged from their users (oh, and advertising besides). The free model works for some Linux distros because they sell vastly expensive support contracts to enterprise. But other than that, it's a bloody bad time to be a developer.