Deep Links
GPS JoyStick supports the gpsjoystick:// URL protocol for triggering actions from browsers, other apps, or automation tools. Tap a deep link or open it programmatically to launch the app and execute the corresponding action. If the joystick overlay is already running, the action executes immediately. If not, the app starts and sets up the action.
Free Deep Links
Section titled “Free Deep Links”These work with any version of GPS JoyStick.
Teleport
Section titled “Teleport”Teleport to a specific location.
gpsjoystick://teleport?lat={latitude}&lng={longitude}&alt={altitude}| Parameter | Type | Required | Description |
|---|---|---|---|
lat | float | Yes | Latitude (-90 to 90) |
lng | float | Yes | Longitude (-180 to 180) |
alt | float | No | Altitude in meters |
Examples:
gpsjoystick://teleport?lat=37.8095&lng=-122.4101gpsjoystick://teleport?lat=37.8095&lng=-122.4101&alt=10.2Start a saved route by name.
gpsjoystick://route?name={your-route-name}| Parameter | Type | Required | Description |
|---|---|---|---|
name | String | Yes | Name of the saved route (URL-encoded) |
Example:
gpsjoystick://route?name=My%20Awesome%20RouteStop the joystick.
gpsjoystick://stopNo parameters required.
Pro Deep Links
Section titled “Pro Deep Links”The following deep links require an active Pro subscription.
Walk along a series of waypoints.
gpsjoystick://walk?waypoints={lat,lng;lat,lng;...}&teleport={true|false}&speed={speed-in-km/h}| Parameter | Type | Required | Description |
|---|---|---|---|
waypoints | String | Yes | Semicolon-separated lat,lng pairs |
teleport | boolean | No | Teleport to the first waypoint before walking (default: false) |
speed | float | No | Walking speed in km/h |
Examples:
gpsjoystick://walk?waypoints=37.8095,-122.4101;37.8060,-122.4090gpsjoystick://walk?waypoints=37.8095,-122.4101;37.8060,-122.4090&teleport=truePause Route
Section titled “Pause Route”Pause a walking route.
gpsjoystick://route-pauseResume Route
Section titled “Resume Route”Resume a paused route.
gpsjoystick://route-resumeNext Waypoint
Section titled “Next Waypoint”Skip to the next waypoint on the active route.
gpsjoystick://route-nextPrevious Waypoint
Section titled “Previous Waypoint”Jump back to the previous waypoint.
gpsjoystick://route-prevHide Joystick
Section titled “Hide Joystick”Hide the joystick overlay.
gpsjoystick://hideShow Joystick
Section titled “Show Joystick”Show the joystick overlay.
gpsjoystick://showSet Speed
Section titled “Set Speed”Change the movement speed. Value must be greater than 0.
gpsjoystick://speed?speed={speed-in-km/h}| Parameter | Type | Required | Description |
|---|---|---|---|
speed | float | Yes | Speed in km/h (must be > 0) |
Example:
gpsjoystick://speed?speed=25.0Teleport to Favorite
Section titled “Teleport to Favorite”Teleport to a saved favorite location by name.
gpsjoystick://favorites?name={your-favorite-name}| Parameter | Type | Required | Description |
|---|---|---|---|
name | String | Yes | Name of the saved favorite (URL-encoded) |
Example:
gpsjoystick://favorites?name=HomeStart Recording Route
Section titled “Start Recording Route”Begin recording a route from the current position.
gpsjoystick://record-startAdd Waypoint to Recording
Section titled “Add Waypoint to Recording”Add the current position as a waypoint to the active recording.
gpsjoystick://record-addStop Recording Route
Section titled “Stop Recording Route”Stop recording and save the route. Requires at least 2 recorded points. Omit the name parameter to cancel without saving.
gpsjoystick://record-stop?name={route-name}| Parameter | Type | Required | Description |
|---|---|---|---|
name | String | No | Name for the saved route (URL-encoded). Omit to discard. |
Example:
gpsjoystick://record-stop?name=My%20Recorded%20RouteGenerate Route
Section titled “Generate Route”Generate a random or circular route from the current position and start walking it.
gpsjoystick://generate?mode={0|1}&marker_count={count}&offset={meters}| Parameter | Type | Required | Description |
|---|---|---|---|
mode | int | No | 0 = random (default), 1 = circle |
marker_count | int | No | Number of waypoints, 1-5000 (default: 10) |
offset | float | No | Distance in meters between points (default: 50.0) |
Example:
gpsjoystick://generate?mode=0&marker_count=20&offset=100Deep Links vs. Intents
Section titled “Deep Links vs. Intents”Deep links and intents achieve the same results through different mechanisms:
| Deep Links | Intents | |
|---|---|---|
| Protocol | gpsjoystick:// URL | Android Intent action |
| Trigger from | Browser, any app, QR codes, NFC tags | Tasker, MacroDroid, ADB, other Android apps |
| Requires | Nothing - standard URL handling | Intent-capable launcher (Tasker, ADB, etc.) |
| Best for | Quick triggers, web integration, sharing | Automation workflows, scripted sequences |
Every deep link has a matching intent, but not every intent has a deep link - intents are a superset. For example, the STATUS intent is intent-only and has no deep link equivalent. See the intent reference for the full list.