Show HN: A GPS for any map (Android app)
play.google.com
play.google.com
You can also scan and upload maps yourself [2].
Once you've done this, the position of the map is stored so you can reuse it whenever you want and be located on your map without internet connection