A piezo button would be neat, might be able to generate enough electricity for each use without having to rely on a battery at all. Not sure about the form factor here though.
Not sure that would work. Charging is not 100% efficient, and if I remember correctly most batteries need to reach a minimum current to start actual charging. When you're talking micro or pico amps, it barely registers as a signal in most cases.
Or even a thin-film amorphous silicon solar panel + capacitor.
Assuming most of the weight of that ring is the battery, it appears to be storing around 0.5Wh, so two years of operation should amount to approximately 30uW of power.
It should be possible to squeeze this much from a 0.5mm2 amorphous cell in direct sunlight. Considering the ring is 6.6mm wide at the widest point, they could get orders of magnitude more power even in poor lighting conditions, by just wrapping a thin-film solar panel around the ring.
EDIT:
Or just slap on four of these photodiodes:
https://www.sparkfun.com/miniature-solar-cell-bpw34.html
They're tiny, they're light and even though woefully inefficient, they should do the trick.