I've just bought my fourth Android phone, but only the second that wasn't an AOSP device. The two non-AOSP devices had bloatware problems that reminded me of the things that caused me to switch from the iPhone to Android phones.
For those not familiar with the term - and IIUC, iPhones don't have bloatware in the traditional sense - bloatware is software added to an Android system by either the manufacturer or the network provider that you can't delete. In that, it resembles the OS software - except it wasn't designed by the same group that did the OS, and seldom integrates well.
My first non-AOSP phone was a Droid 3. I bought it as part of changing carriers. The bloatware on it was worse than useless - it actually broke basic functionality.
The least annoying bloatware was the launcher provided by Motorola. It was slow and clunky - on a high end, dual-core phone! At least I could replace it by installing a third party launcher, which mean that it just took up room in the system ROM.
The annoying one was the task killer. Task killers on Android are a bad idea. I've never used them. People running broken software on early versions of Android may have benefited from them, but that wasn't true of Gingerbread, and Gingerbread had been out for most of a year by the time the Droid 3 came out. As far as I can tell, the only thing this ever did was pop up to interrupt my music or ebook reader when I used them for a long time.
Like most bloatware, it couldn't be removed, and couldn't be turned off. So it occupied room in both ROM and RAM and wasted CPU cycles.
But the music player was even worse. It was a modified version of Google's music player, with the bluetooth and headset controls hardwired to go to it. However, it predated Google's cloud-based music service. Installing the update from Google left me with two music players, with the same name and icon. Confusing. Worse yet, once I got the right player working, if I used a bluetooth or headset "pause" button on it, the wrong one would start playing.
When I asked Verizon for help, they couldn't do anything and suggested I talk to Motorola. Motorola's response was "That's the way it's supposed to be."
As you can expect, I rooted this phone ASAP, just so I could turn those things off. Even so, the bluetooth and headset music controls never worked properly on that phone. I was more than glad to get rid of it, and will be avoiding Motorola phones unless they do an AOSP phone.
This is my third HTC Android phone, all of which have been Ones (the others being a G1 and a Nexus One). The bloatware on it is called "Sense". Sense actually gets good reviews - people seem to like it. I can see why, but it's a waste of space for me.
For instance, it has a clock, calendar and weather widget built into the launcher, car dock and lock screens. OK, cool. I normally don't use a clock widget (there's a clock in the notifications bar), but getting the other two in a built-in widget would make it worthwhile.
Except ... I fly RC aircraft as a hobby. Wind speed is crucial for this - if it's to high, I can't fly! I won't use a weather app that doesn't provide this. And the one provided with Sense doesn't. You can't change the app used by - or even started by - the widget, and you can't remove the widget.
There is an odd thing about this. Newer versions of Android have a feature that let the user disable bloatware - if whoever installed it lets you. The weather app on the HTC One can be disabled, and I did so. Now the widget just complains about not being able to get the weather. Seems like they could do better than that.
Similarly, the car dock application has a music player widget built into it. But the music player can't access Google's cloud music, so there's nothing on it I want to hear. I can't remove this, so the car dock needs to be replaced.>
The other interesting part of Sense is "Blinkfeed", which HTC has been advertising heavily. It's a great idea - the latest news from all your news sources available on the lock screen! Except - well, no RSS feed. No email. Those are my primary news feeds. It's either various syndicated news sources or a small set of social networks - not including the one I use (Google Plus).
Fortunately, this is easy to fix. Install a third part launcher (again). Then install Executive Assistant. I've been using EA since the Nexus One. Much like Blinkfeed, it provides the latest information I want - except it actually provides the ones I want! Set it to act as a lock screen, and disable the stock lock screen in the Security settings, and it works better than ever.
So, how does iOS fit into this discussion? After all, Apple maintains strict control over the software on it, and it doesn't (or didn't when I was using it) have bloatware from the manufacturer or the cell provider.
It fits somewhere between the Droid 3 and the HTC One. Do recall that I haven't owned an iPhone in a while, so some of these practices may have changed. Updates are certainly appreciated.
Apple provides a smooth, integrated experience with it's devices. This is great - if it's the experience you want. If not, and it's part of the experience that Apple is particularly proud of, then you can't replace it - so it's indistinguishable from bloatware.
Unlike the Droid 3, none of the Apple software breaks third party software - assuming it's available. Unlike the HTC One, many of the parts can't be fixed by changing settings.
Apple doesn't have Widgets at all, so you can't configure the home screen display to provide information you want that apple doesn't provide. You can't replace the home screen software, so you can't fix things that way. Or even fix a home screen that doesn't provide the features you want. If it's not what you want and you can't replace it, it's bloatware, no matter who it comes from.
One of the things quietly taking over the Android world are "trace" keyboards. These let you enter words into a virtual keyboard without ever taking your finger off the keyboard. You make the same motions you'd make to type out the letters, but leave your finger on the keyboard. The software looks at where your finger changed directions, and then uses a dictionary to guess what word you are entering. Yes, it's not 100% accurate, but it's not really any worse than the iOS keyboard with auto-correction turned on. And it's both easier and faster than trying to type in the letters. They are now so popular that all the general-purpose keyboards I have available provide this functionality.
In fact, the ability to use third party keyboards is a major win in and of itself. Try opening an ssh session to another system and using a modern shell. Characters that are common in that environment range from hard to impossible to use. So I normally install a third party app that provides a keyboard designed for this situation.
Google has gone out of it's way to make the Android system pluggable, allowing users (and, unfortunately, manufacturers and cell providers) to plug in replacements for most functionality. After experiencing this, Apple's approach of locking users into their own software is indistinguishable from bloatware. Right now, none of my devices are rooted, though I've thought about it in order to install Titanium Backup for backup services, because between the built-in functionality and third party replacements, they do almost exactly what I want. My iPhones, on the other hand, never lasted long without being jail-broken. In fact, I'd usually delay OS upgrades until after the jailbreak was available, simply because they never did enough out of the box.
So iOS comes with software I don't like, don't want to use, and can't get rid of. Not as good as the HTC One, in that I have to jailbreak the phone in order to install an alternative. Better than the Droid 3, in that it's not fundamentally broken as is, and generally doesn't break the alternatives.