Then again, Android comes in different flavors while Windows does not. There is a trade-off there, and you'll usually get the same or better upgrade frequency from an Android OEM than from Microsoft.
For those interested in having the latest version (most consumers aren't even aware their device is outdated, or don't care) there's CM and similar options. Driver issues exist with some hardware (Samsung Exynos for instance, prime example), and that's a shame, but it's not much different from going to GNU/Linux on x86, which I find is comparable (more up to date, generally better performance and UX, non-proprietary, but some hardware incompatibility)
For those interested in having the latest version (most consumers aren't even aware their device is outdated, or don't care) there's CM and similar options. Driver issues exist with some hardware (Samsung Exynos for instance, prime example), and that's a shame, but it's not much different from going to GNU/Linux on x86, which I find is comparable (more up to date, generally better performance and UX, non-proprietary, but some hardware incompatibility)