Privacy policy
Last updated: 25 May 2026
The short version
TrainWake doesn’t collect any personal data. There is no backend, no account, no analytics, no third-party SDKs. Everything the app records — your journeys, your route polylines, your trip history — stays on your phone in the app’s private storage.
What the app stores on your device
- Journeys you configure: the two destination names + coordinates and, for recorded journeys, the GPS polyline of the route. Stored in the app’s private Room (SQLite) database.
- Trip history: which journey, which destination was approached, and start/end timestamps. Stored alongside the journeys.
- App settings: nudge and alarm distances.
- Diagnostic log: a rolling ~2 MB file written under the app’s private storage to help diagnose bugs. Only shared if you tap “Export logs” in Settings.
Uninstalling the app removes all of this. None of it is uploaded anywhere.
What the app does not store
- Raw GPS traces. Live position is read from the OS while a trip is in progress, used to compute distance-to-destination, and then discarded. Only the journey’s saved polyline + the trip log entry are persisted.
- Identifiers. No advertising ID, no device fingerprint, no account.
- Cross-app data. The app doesn’t read contacts, calendars, photos, or other apps’ storage.
Permissions and what they’re used for
- Location (foreground and background) — required to detect that you’ve boarded your train and to compute distance to your stop. While the phone is stationary the app uses a hardware motion sensor plus a low-rate GPS check (~one fix per 90 s); GPS switches to continuous tracking only once you’re confirmed moving at vehicle speed.
- Activity recognition — tells the app when you board a vehicle, so GPS can stay off until then.
- Notifications — to show the always-on status chip, the gentle nudge a few stops out, and the alarm at the station.
- Full-screen intent — for the alarm screen to appear over your lock screen.
- Wake lock + boot completed — to keep the detection service alive long enough to fire the alarm, and to bring it back after a reboot.
- Internet — used only to fetch map tiles from OpenStreetMap (see below).
Network requests
The app makes one kind of network request: tile fetches to OpenStreetMap to render the in-app map (in the setup wizard, the route recorder, and the home-screen mini map during a trip). OpenStreetMap’s own privacy policy applies to those requests; they receive your IP address and the tile coordinates you load. They do not receive any TrainWake identifier or any other data about you.
No other servers are contacted. No analytics, no crash reporting, no advertising networks.
Third parties
TrainWake uses Google Play Services for two on-device APIs — the fused location provider (which serves the GPS fixes the app already needs) and Activity Recognition. Both run inside Google Play Services on your phone. TrainWake does not send Google any additional data.
Children
TrainWake is not directed at children under 13. It collects no personal data from anyone.
Changes to this policy
If we ever change what the app does with data, this page will be updated and the new “last updated” date will reflect the change. Material changes to data practices will also be called out in the app itself.
Contact
TrainWake is published by Smith Built Concepts Pty Ltd. Reach us at sbc.software.