What do you mean after a few years? Name one smartphone that doesn't have crappy battery life out of the goddamn box!
Seriously smartphone manufacturers, stop trying to shave 3 yoctometers off the thickness every 6 months and give me a phone that is thicker but has a battery that lasts a reasonable amount of time and cycles less deeply so it has a longer life.
The Moto Z Play, with its combination of 3510 mAh battery, Snapdragon 625 processor and 1080p screen has great battery life. Add in a power pack Moto Mod if you need even more. It's a mid-range phone for a mid-range price (and so comes with tradeoffs), but it's a solid phone and for battery life it's excellent. Mine just got the Android 7 upgrade too.