FWIW, on Android at least, there's Google手書き入力 which does a pretty fantastic job in my experience. It's good enough that funky stroke order, missing strokes, and full-on cursive still usually Just Work.
[1]: https://f-droid.org/en/packages/ch.seto.kanjirecog/
[2]: "Note that this will NOT work - at all - if you don't know basically how to draw kanji. If you just draw something any old way that looks like it, it certainly won't be recognised."