I would like to propose another offline routing approach using Graphhopper, a small and fast Java library for Android (1.5Mb the needed graphhopper-core) that work directly with the OSM compressed .pbf data.
The users could use their own pbf data (like downloaded from GeoFabrik) or you could provide slimmed down versions in your server of pbf containing only streets (easily done with osmium-tool with the command "osmium tags-filter original.osm.pbf w/highway -o onlystreets.oms.pbf").
In this way you could:
- Avoid the installation of the separate BRouter app and its configuration (that is not so intuitive).
- Use the latest offroad tracks and streets provided by the OSM community.
- Support multiple profiles (including public-transports).
- Help to solve your voice guidance feature request, as this library give also exacts textual directions to follow. So will be missing only the integration of a TTS engine for the speech functionality. Alternatively if this textual directions will be visualized as notifications you will get for free the integration with connected smartband/smartwatch that will automatically receive and show the notification.
Hope this could help.
Best regards,
Damiano