the problem - for me - is that all three major flavors of Smartphone (well, two plus Windows which I still think is under-rated) are generally a pretty meh experience.
Android has a problem with stability and robustness. When it works, it works well (even when vendors like HTC and Samsung pile their cruft on top of it) but when there is a weakness then fixing it seems too hard. My Nexus5X is a case in point... multiple times a day the Google Calendar app crashes for no apparent reason and when it's done that enough times the phone reboots. If Google can't get their flagship devices right what hope have random Chinese vendors
iPhone has a problem with the locked down OS. Sure, there are lots of apps and the phone is <sarcasm>magical</sarcasm> but what if I want to change the default Map app, or browser, or ... well anything for that matter. Didn't Microsoft get forked over by the DoJ and the EU for that sort of behavior? Apple make decisions as to whats good for me and still expect me to shell out several hundred quid every 12-18 months for a newer shinier model (now in champagne with hints of rose gold). And OMG please stop with the bespoke connectors.
Windows Phone... largely uninspiring designs and still far too few "cool" apps (but Windows 10 does seem to be making a difference) but the ecosystem is a mess and while W10 is largely better than what came before it the attention to detail and rush to add shiny new features (that no-one wants) is distracting them from making a bullet-proof OS that's easy for developers to build for which in turn leads users to buy without fear of getting left behind in the app race.
All three suffer from crap battery life and pretty awful hardware robustness. Big slabs of glass are fragile, but it also seems the innards are designed to self destruct after about 24 months to keep us on the upgrade cycle so they don't build in anything apart from obsolescence.