I would say it is a very simple reason...
I've had Windows, Android, and iPhones. Several of each.
My favorite ones were the Windows phones. But, they had the same issue that the Android phones I've had did. The OS that they came with, is what they'll have. No future upgrades to later major releases.
One Windows phone I only managed to get upgraded by a x.1 step because I sent it in for repair, and they sent it back to me with the OS updated slightly.
But, there was no way to upgrade it myself, and I haven't been able to upgrade it beyond that either.
I preferred the use of the Windows Phone, much more flexible, more like a computer, could do everything I wanted and more. But, there came a problem. In time, software for the version I had dried up, and I couldn't get new programs without getting a newer version of Windows, and I couldn't get a newer version of Windows without getting a new phone.
Now, I don't know if it's still that way, but my last experience was such.
And, I do still have that Windows Phone, I use it like a small iPad when I just want to dink around at home using my wifi and look something up online.
Android, I've had the same problem regarding OS updates. What my phone came with, is all it will let me have. But, it seems irrelevant to the software available. The apps don't care that I have an older Android release. So, that's better. I still have 3 other Android devices that I keep around and tinker with when I'm killing time, or just playing around.
iPhone... well, honestly, I could take it or leave it. It works for what I need it to do. The only reason I went with the iPhone I have now over the Android, was in the essentially free price, I found the iPhone to have better reception in my frequent locations than the Android phone that would have been my alternative when I was getting my annual phone update from my carrier (yes, I can get a free phone annually if I choose to). Yes, I had a chance to test them both with my carrier to make up my mind (free exchange in given time period).