LuraventisTR

Projects › Map Tools: Fake GPS & Tracker › Permissions and Data Use

Permissions and Data Use

Last updated: October 11, 2026

Map Tools: Fake GPS & Tracker
Permissions and Data Use
Last Updated: October 11, 2026

This page explains every Android permission the App may request and why each is needed. All permissions are user-granted and can be denied; denied permissions disable or limit the feature that depends on them.

1. Location Permissions (ACCESS_FINE_LOCATION / ACCESS_COARSE_LOCATION)
Used to read your real GPS position. This is needed to center the map on your current location and to validate the mock setup. Android's FusedLocationProvider mock APIs also require this permission group.

It is also used to sample your real GPS track while recording a walk: when you press the record button, the device's real location stream is opened and every point is stored on your device with latitude, longitude, altitude, and a timestamp. This use only runs when you start the recording yourself. The same permission is used when you follow a saved track while walking it (to alert you with a vibration when you drift away from the track).

In the map tools, the "Live target" option of the Bearing tool and the "Device location" option of the Location Info tool also use this permission: only when you turn them on, and while the App is on screen, they show your current location (and, in Location Info, the GPS accuracy, altitude, speed, and number of visible satellites). They turn off when the App goes to the background; the location is not stored.

This data is not sent to our servers.

2. Background Location (ACCESS_BACKGROUND_LOCATION)
The mock location service (MockLocationService) runs as a foreground service. This permission allows it to keep publishing mock coordinates when the App is backgrounded or when a scheduler alarm fires.

3. Mock Location (ACCESS_MOCK_LOCATION)
Required for the actual mock-location operation. It is not granted via a runtime dialog but by the user enabling Android Developer Options and selecting this App as the "mock location app".

4. Foreground Service Permissions (FOREGROUND_SERVICE, FOREGROUND_SERVICE_LOCATION, FOREGROUND_SERVICE_SPECIAL_USE)
Declared in the manifest so MockLocationService and the floating widget service can run with a persistent notification. In addition to broadcasting mock locations, they allow a walk recording you started to continue with the screen off and while the App is in the background; the recording service holds a wake lock during this time.

5. Notifications (POST_NOTIFICATIONS — Android 13+)
Used for the foreground service notification, the Smart Shield standby notification, and the walk recording notification. While a recording runs, a persistent notification that cannot be dismissed is shown; it lets you see that the recording is on.

6. Receive Boot Completed (RECEIVE_BOOT_COMPLETED)
Used to re-register scheduled alarms after the device reboots.

7. Exact Alarm (SCHEDULE_EXACT_ALARM — Android 12+)
Granted through Android's special-access screen so the scheduler can fire exactly at the configured time.

8. Display Over Other Apps (SYSTEM_ALERT_WINDOW)
Used for the floating widget. Only requested if the user chooses to enable that feature.

9. Query All Packages (QUERY_ALL_PACKAGES)
Used by the Smart Shield app picker so the user can assign a location profile to each installed app. The list is read locally and never leaves the device.

10. Media Location (ACCESS_MEDIA_LOCATION)
Required so the Photo GPS Editor can read the original EXIF location bytes of the picked image. From Android 10 onward, EXIF GPS is stripped without this permission.

11. Usage Access (PACKAGE_USAGE_STATS)
Used by Smart Shield only. Granted manually by the user from the system "Usage access" settings. It reads only the package name of the foreground app to match it against user-defined rules; it does not read screen content. This feature does not use the Accessibility Service. See the Usage Access Disclosure page for details.

Tools (Measurement and Calculation Tools):
The Ruler, Area, Circle, Sun, Sun Path, Travel Time, Reach Area, and Shadow tools in the "Tools" mode require no additional permission or network access. The Compass and Bearing tools read the device's magnetometer sensor, which requires no permission. Magnetic declination is calculated with Android's built-in on-device model. The Location Info tool calculates the coordinates of the point you tap offline; only the "Live target" and "Device location" options use the location permission (see item 1). Measurements you save are stored only on your device; KML/GeoJSON/CSV export uses Android's share sheet and requires no storage permission.

12. Physical Activity (ACTIVITY_RECOGNITION — Android 10+)
Optional; requested only when you turn on Settings → Walk → "Count steps". During a recording it reads the step count from the step sensor; the value is stored with the recording on your device. If you deny it, walk recording keeps working without steps.

13. Internet (INTERNET)
Required to download map tiles, communicate with Firebase (Remote Config / Crashlytics / Firestore), and resolve address search (geocoding). The App's core mock-location feature works without an internet connection.

What Data Leaves the Device?
• Google Maps: Standard map-tile requests go to Google.
• Address search (Geocoding): the place-name query you search on the map is resolved into coordinates via the Android system geocoder (over the internet; the backend resolver may be Google). Only the search text you type leaves the device.
• Firebase Remote Config: Calls the minimum-required-version configuration check only.
• Firebase Crashlytics: Only on release builds and only if enabled, sends crash stacks and device/model info.
• Cloud Firestore: Reads the app_meta/changelog document only, to display the "What's New" (changelog) text; no user data is written or uploaded.
• No advertising SDK. No analytics SDK.

What Data Never Leaves the Device?
• Your real GPS location.
• Your recorded walk tracks (latitude, longitude, altitude, timestamp) and recording drafts. They stay in the local database on your device; they only leave it if you export a recording as GPX and share it yourself. Exported GPX files also contain the timestamps.
• Heat map and altitude profile data (computed on the fly only to be drawn on screen, never stored).
• The list of installed apps.
• Screen content, typed text, messages, passwords.
• Your photos or photo metadata.

How Do I Stop a Walk Recording?
A recording ends only when you stop it. Opening the App and pressing the stop button is enough; tapping the persistent notification shown while recording also takes you straight to the App. After stopping, you can name and save the track or discard the recording; before saving you can trim the beginning and end of the track.

Questions: luraventis@gmail.com

—
Change Note (September 23, 2026): Item 1 now states that the "Live target" and "Device location" options in the map tools use the location permission only when the user turns them on and while the App is on screen. The Tools paragraph was updated with the Location Info tool, on-device magnetic declination, saved measurements, and file export that requires no storage permission. The App name was aligned with its store listing ("Map Tools: Fake GPS & Tracker").

Change Note (August 2, 2026): Updated for Walk mode. Walk recording was added to the rationale of item 1 (ACCESS_FINE_LOCATION), item 4 (foreground service), and item 5 (POST_NOTIFICATIONS): it is stated that recording only runs when the user starts it, continues with the screen off via a foreground service and a wake lock, and shows a persistent notification. A "How Do I Stop a Walk Recording?" section was added, along with the conditions under which recorded tracks and GPX timestamps leave the device; the tools list was updated to the current 10 tools. The App was renamed from "Location Simulator – Mock GPS" to "Map Tools: Fake GPS & Tracker"; all references in this document were updated. Page URLs are unchanged.

Change Note (June 21, 2026): Updated for the v2.1.0 release. Item 11 now describes the Usage Access permission (PACKAGE_USAGE_STATS) instead of BIND_ACCESSIBILITY_SERVICE. It was noted that the measurement/calculation tools in the "Tools" mode require no additional permission or network access (the Compass uses the magnetometer sensor).

Change Note (June 1, 2026): Updated for the v1.7.0 release. The read-only Cloud Firestore changelog access (app_meta/changelog) was added to the "What Data Leaves the Device?" section.

—
Change Note (October 11, 2026): The Cooldown and Safe Radius tools were turned into Travel Time and Reach Area (straight-line estimates based on the selected speed); the calculation based on in-game wait/ban times was removed and related wording updated. The contact address is now luraventis@gmail.com.

—
Change Note (October 11, 2026 — addendum 2): Added the optional Physical Activity permission for step counting and the Android 12+ device-to-device transfer behavior.