The offline client is called “Mops”, it is a demo project for the german railways.
Some problems with the normally used paper maps:
Regarding apps: there are no generic solutions for offline map apps.
What they tried was an individual custom solution. Some of the features:
To build the app, you need to select the area you want to use from your database, select extra layers, you need to style it and then the app needs to be deployed.
Technically, they used GeoPackage as the exchange/container format.
There are still more possibilities. Reading QR codes. Using the compass. Using other sensors. Entering/adjusting data.
A note on leaflet: it works better on mobile phones than openlayers does. Especially when rendering features.
My name is Reinout van Rees and I work a lot with Python (programming language) and Django (website framework). I live in The Netherlands and I'm happily married to Annie van Rees-Kooiman.
Most of my website content is in my weblog. You can keep up to date by subscribing to the automatic feeds (for instance with Google reader):