Acknowledgements
locationjoystick is built on open-source projects. Thanks to everyone who works on them. For what the app sends to online services, see Settings → External services.
Maps
Everything behind the map, routes, and place search.
MapLibre Android SDK
Draws the interactive map, including the floating map overlay.
License: BSD 2-Clause
OpenStreetMap
Supplies the default map you see on every map screen.
License: ODbL (© OpenStreetMap contributors)
Amap (高德地图)
An optional map source you can choose in Settings.
License: © AutoNavi · GCJ-02 coordinate system
EOX::Maps
Supplies the optional Satellite map: Sentinel-2 cloudless imagery from 2016. Contains modified Copernicus Sentinel data 2016.
License: CC BY 4.0 · © EOX IT Services GmbH
OSRM (Open Source Routing Machine)
Makes routes follow real roads, for guided routes and roaming.
License: BSD 2-Clause
Nominatim (OpenStreetMap Foundation)
Finds places by name in the route creator and the favorites map picker.
License: Data: ODbL · Software: GPL-2.0
Photon (Komoot)
Finds places by name when the main search cannot be reached.
License: Data: ODbL (OpenStreetMap) · Software: Apache-2.0
GeoNames
Supplies the list of larger cities that place search uses offline.
License: CC BY 4.0
Language
The tools the app is written in.
Kotlin (JetBrains)
The language the whole app is written in.
License: Apache 2.0
Kotlin Coroutines (JetBrains)
Runs location updates and network requests in the background without freezing the screen.
License: Apache 2.0
Kotlin Serialization (JetBrains)
Converts your data to and from the backup file format.
License: Apache 2.0
Hilt (Dagger) (Google)
Creates the app's internal parts and links them together at startup.
License: Apache 2.0
Screens
What you see and how you move around.
Jetpack Compose (Google)
Builds every screen and button in the app.
License: Apache 2.0
Material 3 (Google)
Gives the app its look: buttons, cards, dialogs, and colors.
License: Apache 2.0
Google Material Symbols
The show/hide joystick icon on the floating widget.
License: Apache 2.0
AndroidX Navigation Compose (Google)
Moves you between screens and opens the side menu.
License: Apache 2.0
AndroidX Lifecycle (Google)
Keeps each screen's data when you rotate the phone or switch apps.
License: Apache 2.0
Inter (Rasmus Andersson)
The typeface for all text in the app.
License: SIL Open Font License 1.1
Storage
Your data stays on your phone.
AndroidX Room (Google)
Stores your routes and favorites on your phone.
License: Apache 2.0
AndroidX DataStore (Google)
Remembers your settings.
License: Apache 2.0
Network
Sends the few requests the app makes.
Retrofit (Square)
Sends requests for place search and road-following routes.
License: Apache 2.0
OkHttp (Square)
Carries every request the app sends over the internet.
License: Apache 2.0
QR codes
Used for transferring your data between phones.
ZXing (Zebra Crossing) (Google)
Creates and reads the QR codes for phone-to-phone transfer.
License: Apache 2.0
AndroidX CameraX (Google)
Lets the QR scanner use your camera when you receive a transfer.
License: Apache 2.0