Yes, Android support is a bit bad, slowly improving but still unsatisfactory. However, I agree with other commenters that it's not a good apple to apple comparison.
Most of the apps that come with Android with Google apps (which all of the OEMs listed use) have the majority of apps that can be updated from the Play Store. Besides for 'low-level' APIs that change with each Android version, a lot of users still get the benefits of app updates, which ordinarily continue to work fine on older hardware.
Of course this becomes a problem for developers regarding which versions to target as a minimum, but to offset that to an extent, there are compatibility libraries (both from Google and the community).
Lastly, the aftermarket ROM community is doing wonderful work with supporting flagships and other device ports. It can only get better, definitely not a reason for me to switch to iOS, if I know the differences between the OS features, and what each version of each OS roughly has, I should also know that I can get a custom ROM that will have all and likely more features than stock Android.
Of course this becomes a problem for developers regarding which versions to target as a minimum, but to offset that to an extent, there are compatibility libraries (both from Google and the community).
Lastly, the aftermarket ROM community is doing wonderful work with supporting flagships and other device ports. It can only get better, definitely not a reason for me to switch to iOS, if I know the differences between the OS features, and what each version of each OS roughly has, I should also know that I can get a custom ROM that will have all and likely more features than stock Android.