What confuses is me is what kind of work needs to go in to updating android on different phones? If Android is compatible with the architecture of the phone shouldn't the software update from Google work?
Unfortunately there is no real standard hardware architecture for Android devices. Some pieces are the same, but every device has different incompatible components. So the device vendors have to re-apply a unique set of patches every time.
AFAIK, they don't use Google's software updates, because they have their own "distribution" that's mostly the same but slightly different from the vanilla Android version, so they need to merge those changes and test them before they can push the updates to the phones they made.
When you have as many types of hardware as Android supports, it becomes a shit show. iOS can do updates for longer because the hardware isn't all over the place.