Because a thermometer is software and software is imperfect. Perhaps it made some assumptions that causes phones that were released after the app was released to drain the battery very quickly. Or it has a calculation error where over time it accumulates a significant difference between the measurement data and the data that is rendered on screen. Or perhaps it's using an API that we all thought was safe, but turns out it's not. Or it needs to use an API to get temperature data (thermometer can have different meanings) and the API no longer exists.
Even something as silly as an app that does nothing can run into these issues. The APIs and other interfaces used to run applications are imperfect. Sometimes doing nothing about it is a choice, sometimes the vendor doesn't deem that acceptable and then it is no longer a choice. Either way, the application will have to adapt or degrade (to the point where it degrades out of existence).
Hardware is also imperfect, but "good enough" is much easier to accept in the context of hardware. Good enough should also be good enough for software.
Changing from using one system API to another shouldn't push an app over an N MB filter anyways. If the user runs into an issue, they can update. Otherwise, if it still works fine just continue to use it.
The argument for updating to keep up with API changes can also be flipped against updating to protect against UI/UX changes. I have lost features from Android updates that I have never been able to get back on my phone, only recreate them on my GNU/Linux desktop.