Skip to content

Pro Intents API Overview

GPS JoyStick exposes an Intent-based API that allows external apps and scripts to control location mocking programmatically. Intents are sent as Android Service intents targeting the GPS JoyStick package.

Package: com.theappninjas.fakegpsjoystick Target: Service (all intents)

Type note: All input extras for numeric values (coordinates, speed, offset) use float. The STATUS_RESPONSE output extras use double for these same values. Each intent's page documents the exact types. When in doubt, check the specific intent reference.

These work with any version of GPS JoyStick:

ActionDescriptionDocs
theappninjas.gpsjoystick.TELEPORTTeleport to coordinatesTeleport
theappninjas.gpsjoystick.ROUTEStart a saved routeRoute
theappninjas.gpsjoystick.STOPStop all mockingStop/Pause/Resume

These require an active Pro subscription:

ActionDescriptionDocs
theappninjas.gpsjoystick.WALKWalk through waypointsRoute
theappninjas.gpsjoystick.ROUTE_PAUSEPause the active routeStop/Pause/Resume
theappninjas.gpsjoystick.ROUTE_RESUMEResume a paused routeStop/Pause/Resume
theappninjas.gpsjoystick.ROUTE_NEXTAdvance to next waypointStop/Pause/Resume
theappninjas.gpsjoystick.ROUTE_PREVGo to previous waypointStop/Pause/Resume
theappninjas.gpsjoystick.HIDEHide the on-screen joystickSpeed & Joystick
theappninjas.gpsjoystick.SHOWShow the on-screen joystickSpeed & Joystick
theappninjas.gpsjoystick.SPEEDSet movement speedSpeed & Joystick
theappninjas.gpsjoystick.FAVORITESTeleport to a saved favoriteTeleport
theappninjas.gpsjoystick.RECORD_STARTStart recording a routeRoute
theappninjas.gpsjoystick.RECORD_ADDAdd waypoint to recordingRoute
theappninjas.gpsjoystick.RECORD_STOPStop and save/discard recordingRoute
theappninjas.gpsjoystick.GENERATEGenerate a random routeRoute
theappninjas.gpsjoystick.STATUSQuery runtime stateStatus Query

All intents broadcast theappninjas.gpsjoystick.ERROR on failure with these extras:

ExtraTypeDescription
source_actionStringThe intent action that failed
errorStringError code
messageStringHuman-readable description

Error codes: PRO_REQUIRED, INVALID_EXTRAS, FAVORITE_NOT_FOUND, NOT_RECORDING, SAVE_FAILED, NOT_WALKING, NO_ROUTE_ACTIVE, ALREADY_RECORDING

If the service is not running when an intent is received, the app will automatically launch and attempt to process the command. Invalid or empty waypoints are silently ignored rather than producing an error broadcast.

GPS JoyStick also supports the gpsjoystick:// URL protocol as an alternative to intents. Deep links can be triggered from browsers, other apps, QR codes, or NFC tags - no intent-capable launcher required. Most actions available as intents have equivalent deep links, with the exception of STATUS (intent-only).

See the Deep Links reference for the full URL syntax.