In my opinion, Google made Android as not an open source. It looks like open source because it is based on Linux. A lot of people are familiar with Linux file structures and it's source. Therefore, people started to look into Android and start taking it apart to make it look like an open source. That is one of the reason, I think, that Google or any other manufactures does not release their information to general public. As Android being based on Linux, it's very easy to pull out and modify it doesn't necessarily mean it should be considered open source.
On the other hand, Apple was very secretive about their devices since the beginning and they kept their idea consistent. After all, something that is consistently improving always wins over approval of public when compared to something drastically changing without its consistency. If you ask Apple users, they will emphasize on one update and make a huge deal about it. Why? Because they feel it as improvement and they are experiencing it. For us Android users, we have great improvements but we cannot experience it because it was drastic. It happened relatively overnight without any warnings. Users were not the top priority. It's like Google and other Android phone manufactures are telling us, if you want the improvement, then you have to buy the latest thing. That is the real downsize of Android. Apple would try to upgrade their oldest machine to latest software if possible until it becomes unseable.
The difference is that iOS is made more for average users and Android seems to aim for users who will want the next best thing at no matter what the cost is. To be honest, Android is not a complicated device. Yes, it was a big flaw in 2.1 but after Froyo and up, it was a stable OS. Average user would have not as many problem with the device as they would not do anything more than text, talk and maybe play some angry bird. This doesn't suit us. We are the community that wants the latest upgrade possible. So, we are constantly tweaking the device. That creates more bugs which causes us more frustration.
I know this from experience because my mom has Galaxy S2 and she is still using the ROM that came with it when it came out. She is able to do everything she wants on it and there is no complain from her. She is a technology impaired person and she can do things like watching video, Facebook, surfing the net, looking up on the map, etc. easily and efficiently. Would she choose iOS? Yes. But for her, it doesn't make any differences. On the other hand, I have Triumph. It came with 2.2. I don't like to use it normally. I mess with it. I flash new ROMs. I install new things. I wipe and format partition constantly. My phone doesn't look the same each day. For me, not being able to upgrade doesn't suit me at all. Would I choose iOS? Hell no. Why? Because I don't like things being the same forever. Yes. iOS gets upgraded. But look at iPhone 4 and iPhone 5. Any major changes? Look the same. Feel the same. What is the point for $800 machine?
In the end, it's all just user preferences. For an average user, iPhone will easily win over. For someone who is curious about technology, Android will easily win over. A few bugs don't bother us. We know we will deal with it and eventually make it better. We just don't know when. For average user, if something doesn't work, they will get bothered by it and they will leave it to find something that works for their average use. If iPhone has HDMI and if it doesn't work, average user will make huge deal. For use, we just simply ignore it.
So, for me, I would choose Android over iPhone. If I were to ever get an iPhone, that is only to keep something stable backup.