I used Kivy once a few years ago for a device that had strict constraints on what it could run with the requirement to run the same code on desktop too (to display the same data). It worked very well for that.
It was not an elaborate app, so I cannot comment on how well it might work with something bigger, but it worked very well for what I needed.