I think it is just a matter of what one is most comfortable with.
The HW-solution is a nice challenge, but I am sure, there are simpler ways to solve it.
On a sidenote: I would be surprised if the issue he has is systemic too Android devices in general. I am sure others would have noticed it if was that widespread that it occurred on all devices.