The Android demo is basically a fork from Mapbox and last year or so they even introduced offline routing (probably via valhalla), but only as a binary blob with a closed source license attached (we forked before so this does not affect us).
btw: are you using CH, LM or plain A* for your setup?
I just had a proper look at GraphHopper Navigation - I can't believe I hadn't seen it before - that looks pretty much perfect for my use case! I will certainly be giving that a try.
I'm using plain A* currently. I understood from the Openrouteservice documentation & code that any time dynamic weights were being used, everything fell back to A* anyway. And I'm using dynamic weights heavily! My understanding could be flawed though, and I appreciate I am going to be a few GraphHopper releases behind now. The speed is okay for now - there's certainly bigger items on my todo list first.
I'm excited to try out GH 1.0 properly. Now that I've got much more familiarity with what I'm doing, I'm keen to switch to using GH directly and somehow try to avoid patching it (or try to get any patches merged back into the open source version).
btw: are you using CH, LM or plain A* for your setup?