GPS JoyStick Setup Guide: Complete Walkthrough
Setting up GPS JoyStick correctly is the difference between a smooth testing experience and hours of frustration. The fastest path is the in-app Setup Wizard, documented first below. The manual walkthrough that follows covers the same ground for users who want device-specific detail or who are setting up without the wizard.
Before You Start
Section titled “Before You Start”Make sure you have:
- An Android device running Android 6.0 or higher (this guide covers up to Android 15)
- GPS JoyStick installed - either from Google Play or the unlocked APK
- 10-15 minutes for the standard setup
If you plan to use advanced features like Suspended Mocking, Indirect Mocking, or Privacy Mode, download the unlocked version for your device architecture. System Mode requires the unlocked version and a rooted device running Android 9 or below.
Setup Wizard
Section titled “Setup Wizard”GPS JoyStick includes a built-in Setup Wizard that walks through every prerequisite GPS JoyStick needs before it can mock your location. On the first cold launch after install, the wizard runs before you reach the main screen. After you finish, the same wizard becomes a Setup Hub you can revisit any time from the navigation drawer under Setup & Help.
The wizard has five steps. Each step shows why the step is needed and an action button that opens the right system screen. The last two steps (Developer Options and Mock Location) include an I've Done This verify button so you can confirm the change after returning from system Settings.
| # | Step | Action button | Verify button |
|---|---|---|---|
| 1 | Enable Notifications | Allow Notifications | (auto-detected) |
| 2 | Location Access | Grant Location Access | (auto-detected) |
| 3 | Display Over Other Apps | Grant Permission | (auto-detected) |
| 4 | Enable Developer Options | Open Settings | I've Done This |
| 5 | Select Mock Location App | Open Developer Options | I've Done This |
The wizard detects your device manufacturer and adjusts the instructions for steps 4 and 5 to match the path you will see on your device. Steps 1 through 3 are standard runtime permission prompts, so the wizard simply triggers the system dialog and detects when you grant or deny.
If you're upgrading from v5.2 or earlier, the wizard runs once on first launch after the upgrade. There's no pre-5.3 completion state for it to read, so the wizard treats the upgrade as a first-time setup. Step through it once and it won't run again unless you open it from Setup & Help.
After the wizard finishes you land on the main screen. On the home screen you may see the Quick Options panel collapsed and a Ready / Cooling cooldown pill at the top. Both are normal v5.3 surfaces. See the User Guide for what each control does.
The wizard does not configure battery optimization. Some devices kill GPS JoyStick's background service if you skip that step, so Step 3 of the manual walkthrough below remains relevant after the wizard. The manual walkthrough also has device-specific detail for Samsung, Pixel, and OnePlus and covers the most common failure modes.
Manual Walkthrough
Section titled “Manual Walkthrough”The rest of this page covers the same ground as the wizard, plus battery optimization and troubleshooting. Use it if you skipped the wizard, if you're setting up a second device by hand, or if you're walking another user through setup remotely.
Step 1: Enable Developer Options
Section titled “Step 1: Enable Developer Options”Developer Options is a hidden settings menu that contains the Mock Location setting. You unlock it by tapping Build Number seven times.
Google Pixel (including Pixel 8, 9 series)
- Open Settings
- Scroll down to System
- Tap About phone
- Find Build number at the bottom of the list
- Tap Build number 7 times
- Enter your PIN/pattern when prompted
- You'll see: "You are now a developer!"
Developer Options will now appear under Settings > System > Developer options.
Samsung Galaxy (S24, S23, A-series, Z Fold/Flip)
- Open Settings
- Scroll to About phone
- Tap Software information
- Find Build number
- Tap it 7 times
- Enter your PIN/pattern
- Confirmation: "Developer mode has been turned on"
Developer Options appears under Settings > Developer options (not under System on Samsung).
Samsung-specific note: Samsung devices have additional battery optimization features under Device Care that can interfere with GPS JoyStick. These are addressed in the troubleshooting section below.
OnePlus (12, Open, Nord series)
- Open Settings
- Tap About device (or "About phone")
- Find Build number
- Tap it 7 times
- Enter your PIN/pattern
- Confirmation: "You are now a developer!"
Developer Options appears under Settings > System > Developer options on OxygenOS 14+, or directly under Settings on older versions.
Step 2: Set GPS JoyStick as Mock Location App
Section titled “Step 2: Set GPS JoyStick as Mock Location App”With Developer Options unlocked:
- Navigate to Developer Options (path varies - see above)
- Scroll down to the Debugging section
- Find Select mock location app (may also say "Mock location app" or "Allow mock locations")
- Tap it and select GPS JoyStick (or "Fake GPS Location - GPS JoyStick") from the list
If GPS JoyStick doesn't appear in the list, make sure you've installed it (not just downloaded the APK - it must be installed on the device).
Android Version Differences
Section titled “Android Version Differences”- Android 5.x: The setting is a simple toggle called "Allow mock locations" - enable it
- Android 6.0-15: The setting lets you select a specific app - choose GPS JoyStick
Step 3: Disable Battery Optimization
Section titled “Step 3: Disable Battery Optimization”This is the step most guides skip, and it's the #1 cause of "GPS JoyStick stopped working" complaints. Android's battery optimization will kill GPS JoyStick's background service if you don't exempt it.
Google Pixel
- Settings > Apps > GPS JoyStick > Battery
- Select Unrestricted
Samsung Galaxy
Samsung has multiple layers of battery management:
- Settings > Apps > GPS JoyStick > Battery > Unrestricted
- Settings > Device Care > Battery > Background usage limits
- Make sure GPS JoyStick is not in the "Sleeping apps" or "Deep sleeping apps" lists
- If it is, tap and remove it
- Settings > Device Care > Battery > More battery settings
- Consider disabling Adaptive battery temporarily if GPS JoyStick still gets killed
OnePlus
- Settings > Apps > GPS JoyStick > Battery usage > Background
- Select Allow background activity
- On OxygenOS 14+: Settings > Battery > Battery optimization
- Find GPS JoyStick and set to Don't optimize
Step 4: Test Your Setup
Section titled “Step 4: Test Your Setup”Time to verify everything works:
- Open GPS JoyStick
- The app shows a map with a crosshair marker
- Long-press or drag the marker to a location you want to test (somewhere clearly different from your real location)
- Tap the Start button (play icon)
- The joystick overlay appears on screen
Now verify the mock is working:
- Open Google Maps (or any map app)
- Your blue dot should show at the mocked location, not your real position
- Try moving the joystick - the blue dot should follow
If the blue dot shows your real location instead of the mocked one, see the Troubleshooting section below.
Troubleshooting: Common Failure Modes
Section titled “Troubleshooting: Common Failure Modes”GPS JoyStick not in the Mock Location app list
Cause: The app may not be installed correctly, or you're looking at the wrong version.
Fix:
- Confirm GPS JoyStick is actually installed (check your app drawer)
- Make sure you installed the right version - the Google Play version is "Fake GPS Location - GPS JoyStick" by The App Ninjas
- Try uninstalling and reinstalling
- Restart Developer Options (toggle off and on)
Mock location works in Maps but not in the target app
Cause: The target app is detecting mock location through the Android API.
Fix: You need a setup method that handles apps with active mock-location checks:
- Root Method: Install GPS JoyStick as a system app
- Smali Method: Patch the framework so mock-location flags are not propagated to apps
The standard mock location setting works for most apps, but some apps specifically check for mock location flags.
Location keeps jumping back to real position
Cause: Your real GPS signal is competing with the mocked location (rubberbanding).
Fix:
- Enable A-GPS Reset in GPS JoyStick Settings
- Try the GPS Jump Fix options on the Home screen (experiment with different combinations)
- Use GPS JoyStick indoors where the real GPS signal is weaker
- On the unlocked version, enable Suspended Mocking to periodically pause and resume the mock
GPS JoyStick stops working after a few minutes
Cause: Battery optimization is killing the background service.
Fix: Follow Step 3 above carefully for your specific device. Samsung devices are particularly aggressive - you may need to disable Adaptive Battery, remove GPS JoyStick from sleeping apps, AND set battery usage to Unrestricted.
"Draw over other apps" permission denied
Cause: Some Android versions require explicit permission for the joystick overlay.
Fix:
- Go to Settings > Apps > GPS JoyStick > Display over other apps (or "Appear on top")
- Enable the toggle
- On some Samsung devices: Settings > Apps > Special access > Display over other apps
Joystick appears but location doesn't change
Cause: Mock location app isn't properly set, or another app is overriding location.
Fix:
- Verify GPS JoyStick is set as the mock location app in Developer Options (it can get reset after system updates)
- Disable any other location spoofing or VPN apps that might interfere
- Force close Google Maps and reopen it (it caches the last known location)
- Try toggling Location off and on in Quick Settings after starting the mock
After Android system update, mock location resets
Cause: Some Android updates reset Developer Options settings.
Fix:
- Go back to Developer Options
- Re-select GPS JoyStick as the Mock Location app
- This is a known Android behavior - it happens with major security patch updates
Advanced Configuration
Section titled “Advanced Configuration”Process Interval Tuning
Section titled “Process Interval Tuning”GPS JoyStick Settings includes a Process Interval setting that controls how frequently the mocked location is broadcast. The default works for most users, but you can tune it:
- Lower interval (e.g., 500ms): More frequent updates, smoother movement, higher battery drain
- Higher interval (e.g., 2000ms): Less frequent updates, may appear jerky during movement, lower battery drain
Only change this if you understand the trade-offs. The default value is optimized for the best balance of smoothness and battery life.
Using with Multiple Apps
Section titled “Using with Multiple Apps”GPS JoyStick mocks the system-level location, so all apps see the same mocked position. This is by design - you can't mock different locations for different apps simultaneously.
If you need to test multiple locations:
- Use the Pro Intents API to rapidly switch between locations via Tasker or ADB
- Set up saved routes for common test paths
- Use saved favorites for frequently-tested locations
What's Next
Section titled “What's Next”With GPS JoyStick set up and working:
- GPS JoyStick User Guide - Complete reference for controls, teleporting, GPX routes, favorites, and speed modes
- Download GPS JoyStick - Get the unlocked APK for your device
- Set up Tasker automation - Automate location changes on schedule or trigger
- Explore the Pro Intents API - Full programmatic control for testing pipelines
- Troubleshooting FAQ - More solutions for specific device issues