The problem is not really the battery anymore, it's the software mainly. It's all closed source and is often deprecated before the hardware is dead. Then the manufacturer makes it hard to unlock bootloaders; keeps drivers closed source and effectively bricks the device. For recurring sales are the backbone of modern economy so we must force obsolescence. Why would you want to replace a battery in a useless device? Pl…
Battery in my last device became too weak long before device was useless. Device was perfectly fine, just that battery did not hold long anymore.
1. Battery
2. Software
3. Charge port/headphone port
4. eMMC storage runs out of writes
5. Accidental damage
6. Screen scratches
7. Wanting more RAM/storage and faster processing
Batteries are getting better, and we can extend the life of a LiIon battery by about 5X by limiting charging to 80%. If batteries inherently had as short a life as they commonly do in phones, then electric cars would be doomed, but there's no real reason why we can't get phone batteries to last 10 years or more.The software can only be solved by constant effort. There are certain things that could possibly be done to make it easier, such as arranging the device-specific stuff so that the effort already spent on producing a newer set of software for a newer device can be more easily back-ported to the older devices. I think this will only be solved by legislation, such as a law saying that the software must be updated for X years, or even just a law saying that the support duration must be very clearly advertised with the phone allowing consumers to make a choice.
A USB-C port is rated for a minimum of 10,000 plug/unplug cycles, which should be enough to charge the phone once a day for 30 years. If that isn't actually being achieved then we need to ask why not.
The eMMC storage is a problem with many phones. My phone is just starting to slow to a crawl because its main storage is old and it takes a while for it to perform certain writes (or something - it's hard to get an accurate picture of what is happening in there). There is zero information that a consumer has available when deciding which phone to buy to tell them which ones will have a problem with this. This seems to be a fairly obvious target for a law, similar to the software support duration.
Accidental damage - I remember reading a statistic about how the average phone survives a ridiculously short time before being dropped and broken, and I don't get it. I haven't dropped/broken a phone ever. I guess we just let the people who are constantly dropping their phones pick up the tab on that one.
Screen scratch protection is also getting really good now. My current phone has lived in my pocket for several years, and there's almost zero scratching on the screen. Just don't keep your keys in the same pocket.
In terms of replacing a phone because you want something better - I had a look recently to see about replacing my phone. The ones on the market at a comparable price to what I spent on my current one had specifications that were really not much better at all. It doesn't make sense - if a phone with those specifications is deemed suitable for today's market, then my old one with almost identical specifications should be fine too.
So, I don't really see any barriers that aren't insurmountable to a phone lasting several times longer than they do at the moment. Ten years should be easy, 15 years should be possible. At the moment, it's more like 3 if you're very lucky.