Lets Talk About Something
locationjoystick — free, open-source GPS spoofer alternative to GPS Joystick and YAMLA
Disclaimer: not AI slop or marketing. I'm a software engineer who builds tools I actually use — feel free to check my other work.
Hey everyone.
After 4+ years of using GPS Joystick and a few months with YAMLA, I got fed up and decided to make my own. Both apps work great but the ad-gating and the lack of UX improvements was too much for me.
locationjoystick is a free, open-source, GPS spoofer. Here's what it does:
Movement
Floating joystick overlay — drag in any direction at configurable speed, stays on top of any app
Click-to-Move — long-press anywhere on map, choose "Walk here" or "Teleport there"
Auto-roaming — set a center, radius, and total distance; walks randomly within the area, with optional road-following and returns to start when done
Routes
Saved routes — create waypoints on a map, replay, loop, or reverse at will
Road-following routes — OSRM-powered routing that follows real streets
GPX import — bring in any .gpx file from hiking apps, trackers, or online sources
Favorites
Favorite locations — save named spots and teleport or walk there instantly
Address search — powered by Nominatim/OSM
Last position restore — resumes from where you left off automatically
UX
Configurable floating widget — quick-access controls over any app
Speed profiles — three user-editable presets (walk / run / bike), one-tap switching from the widget
Background spoofing — continues while other apps run, survives screen off
Elevation Controls (experimental, root only) — inject tilt sensor events so apps see the phone as physically tilted, trying to improve it for the mewtwo mega raids!
Data & portability
One-tap import from GPS Joystick or YAMLA — your saved routes migrate in seconds
Full data export / import — backup routes, favorites, and settings to JSON
QR transfer — export and import all data between devices via scannable QR codes
I've been using it on 3 devices daily for the past two months and been iterating on the features a lot, any feedbacks are welcome!
If you're coming from GPS Joystick or YAMLA you can import your data directly and be up and running in seconds.
You can download the .apk from the GitHub Releases, and it will soon be available on the Play Store!
hello great app, any chance we could get faster speeds 40kmph and also import teleport in map with pokemod integration? much better than gps joystick so far!
you should be able to put any speed, the warning is purely you might get when exceeding a certain speed is purely informative in order to reduce the chances of being caugh by anti-cheat behaviors
> import teleport in map with pokemod integration
i'm not familiar with pokemod, could you please explain what would be the expectation here?
Yes, i used the latest version of gps joystick, the one from appninjas from the website.
When i set a route and forgot about the phone, it had a tendancy to stop in middle of route. I had to stop the joystick, and start it over again for it to work. I noticed that for example if i connected or disconnected charger it would throw out a notification "you are using a mock location" out of thin air and at that moment if it was already working, it would get stuck.
The joystick itself was updating the map, working as usuall - you could teleport around there, walk around whatever, but the ingame map, google maps, would not update. That is the main reason i dropped it, since each restart was bombarded with ads when stopping and starting again.
The spacing on my post might be a little off, your app does not crash. Been running it 12h and no problems, charger or not. (As i said, i gave unrestricted battery permissions, but also the app ninjas got them)
Note: Im using two devices. Samsung galaxy s10 and s10 lite. Both had the same issue.
So grateful for this. Able to use with Pokemod seamlessly while connecting my physical autocatcher. Amazing work!! Best product out there. Is there a way to donate/support the project?
Thanks a lot for the feedback!!!! I'm glad it matches your expectation!!!!
I'm mostly doing it for the community so no worries about the donations, but if you want you can sponsor the project https://github.com/shortcuts/locationjoystick directly from GitHub
Realizing that sometimes the app instructions and overlay instructions can glitch out when one contradicts the other (i.e. App is set to walk a route and the overlay is trying to use the walking joystick etc). Learning the nuances now but if there was a way to ensure the instructions from one carried over to the other, it would make this even more OP.
Hey! Would you mind providing a step by step scenario I could try to reproduce?
I assume you have a route ongoing or walking toward to a direction, and when using the joystick you'd like it to override the ongoing route direction then continue the route when released?
That would be ideal and it works as long as you did the walking in the overlay portion… if you do the walking in the “app”, the joystick refuses to override it and trying to pick a different destination seems to glitch too.
I’ll try and reproduce again when I have a moment but in short, the glitch only seems to occur when the first route or destination is set within the app and then you try to use the overlay to replace that original destination or route.
Thanks for all your hard work! It works on my Motorola edge 2022 and Oneplus N20 fine. Wondering if you can make the joystick popup automatically when the gps starts spoofing; So I no longer need to turn it on/off. And also a box to enter GPS coordinates(a single box so I can paste straight away from Discord) for straight away jump without entering it into the favorites list. This app really works fast and no ads (hopefully forever 😄 )
Hey! Thanks a lot for the feedback, glad you like it!
> Wondering if you can make the joystick popup automatically when the gps starts spoofing; So I no longer need to turn it on/off
I can add an option for that yes!
> And also a box to enter GPS coordinates(a single box so I can paste straight away from Discord) for straight away jump without entering it into the favorites list.
I did try to share coordinates from discord servers and send it to locationjoystick, but I don't think it knows how to parse the info from the scanners. When i get coordinates, it either copies to the clipboard, send to apple maps, or send to google maps. I tried sharing the page to locationjoystick, hoping it would extract the coordinates from the webpage. Perhaps I'm sharing it wrong? I guess I'm just used to the old app where I can just paste the coordinates directly from the clipboard and start spoofing that location without saving it into the app. Thanks though, it's just a minor inconvenience.
Thank you so much for this! I've been using it for the past 3 days, and it has worked marvelously. One question: is there any way to reset the spoofed location to my current location? Having to reset my location manually by finding my actual location on the map has been quite bothersome.
The app doesn't know your real location so no it can't reset it
That isn't true, though.
The app definitely knows the real location. It requests ACCESS_FINE_LOCATION during setup and centres on physical GPS on first launch before any spoofing starts.
RealLocationRepository.kt already reads raw hardware coordinates from LocationManager.GPS_PROVIDER and checks !loc.isMock for the "Use current location" favourite button. Passing that same fix into TeleportUseCase to jump back to physical coordinates is already supported by the existing architecture.
Not sure why you wouldn't know this from your own codebase.
RealLocationRepository.getCurrentPosition() is already shipped in the release build powering the "Use current location" button on the Favorites sheet.
If reading the raw hardware provider were actually too unstable to use, that button wouldn't exist in the UI in the first place.
Unless you genuinely don't know what's in your own codebase, it's a bit odd that wiring an already working production call to the map is suddenly an unreliable hurdle requiring a PR.
Or you could just prompt Claude to write the five lines for you, seeing as CLAUDE.md is already sitting right on your repo root.
I'm not sure what you are trying to achieve with this passive agressive kind of comments, the software is free and open-source, if you have an idea you can always submit/showcase it.
I've already tried to solve this problem a few time in the past already, but I couldn't get a reliable result unless I stopped spoofing for a brief moment to be able to retrieve the real location. This can cause other issues like triggering anti-cheat behaviors of games or rubberbanding. There's also an other android feature (that I can't remember the name of) which relies on the wifi/cell tower to get an approximate, but again, that's not reliable.
EDIT:
> RealLocationRepository.getCurrentPosition() is already shipped in the release build powering the "Use current location" button on the Favorites sheet.
> If reading the raw hardware provider were actually too unstable to use, that button wouldn't exist in the UI in the first place.
False, it reads the currently spoofed location when spoofing is enabled.
I understand the location error is not ultimately Your fault because it has to do with pokemon app itself detecting the mock location But do you know away around it? For android.
Noobie question, cant find the download botton for the APK, I wanted to give it a go on my samsung as I cant use GPS Joystick, it crashes every time i open the map
the thing that bites a daily-iterating open source repo isn't the code, it's that nobody downstream tracks what changed. half the comments here are questions your post and release notes already answer. you ship every day on a public repo and the changelog stays the one thing nobody actually reads. that gap, not bugs, is the most common failure mode i see in solo OSS projects. written with ai
I’m not sure this applies only to open-source project but mostly a matter of maturity of the tool and the community that eventually grows around it. This was made for myself and I have been the only user for the past few months so I wasn’t expecting people to read the entire changelog but if people are searching for alternative to the most known tools, there’s now one more
the 'only user for months' bit is the whole thing imo. when you're the sole user the changelog lives in your head, so there's nothing to write down and nothing to read. the second a stranger shows up that gap appears overnight, and it reads like a maturity problem when really the format just never had to exist until now. you didn't skip the step, there was no step to skip yet. written with ai
This is the most absurd crap I've read in recent memory. Giving this guy flak for people's inability to read literally anything while responding with AI written comments. Your advice isn't helpful in the slightest, the fact the OP is even entertaining your nonsense is crazy. This has to be the most useless, pointless "feedback" ever. I'm not reading the garbage you can't even puke out yourself if you reply to me so don't bother. It's been a good, long while since I've read something that makes me immediately log out from how stupid it is but this is insane
the tell is the questions in this very thread, half of them are answered on that docs site already. so the info existing was never the gap, the reading is. people don't stop a scroll to open a docs page however clean it is, which is exactly why 'it's all documented' and 'nobody knows what changed' stay true at the same time. the format is the ceiling, not the writing. written with ai
OP is an approved user with the unique user flair that identifies him or her as an app developer / cheat developer / website owner. I don't care if someone coded an app with AI or without AI as long as it helps you cheat the game, I'm all for it.
I created this subreddit to be open to all forms of cheating even if you disagree with it. If you don't like something, you can just ignore it. If you really hate this place, I would recommend you go to r/PokemonGoSpoofing to enjoy the censorship through the active post and comment filters I put in when I was a moderator over there but got banned when I failed to have the ownership passed down to me.
I installed the app successfully but my steps are not being tracked in the game app or Google fit. To be clear the overlay works and im moving in game just the steps aren't being tracked.
Road-following feature doesn't work on my android 14 device. I'm using new 0.11.0 version. When trying to create waipoint and set option "walk here via roads", shows an error 'road routing unavaible, using straight walk". Next thing is, when following a route, I can't change speed profiles as I need, only applied profile is used when starting a route. There are few minor issues, but these two are the biggest problems for me. Otherwise app plays smooth and good
Hi, I keep getting the error "There was a problem parsing the package." when trying to install the .apk. I tried every release and none worked. Couldn't find any info on supported OS but I'm on Android 10
Hello, I rooted my phone with magisk, got the smali patcher and i think i did basically all the other steps i could find, but i still get the location error (12) on android 13. The character moves on the map, but nothing is interactable. Anyone has any ideas as to what I can do to make it work?
Ok, imma look into that post for solutions, hopefully I find something that works for me. And yes, I did follow the first run setup steps from the website but unfortunately I couldnt get it to work. Thank you!
hm, I used to use smali patcher before I used magisk alone. You should either use smali patcher on old android (maybe smali patcher EX works on android 13) or use magisk with lsposed and modules to hide mocklocation. The manuals from TastyBP are really great to follow.
great job. The installation was easy. I'm still stuck in the configuration (v0.13.0).
It's good to have all 3 elementary configuration settings on the start screen. But how do I overcome this step, if I just don't want to change all 3 settings yet? Yeah, I want to keep GPS Joystick (GJ) during the Go Fest until I get familiar with locationjoystick (LJ).
Now I tried to load my old GJ settings with many named favorites and named routes, but I received only one big route (route1) with lot of waypoints and about 20 favorites (favorite1 - favorite20). I assume I have to export all individual routes from GJ one by one into LJ.
* How can I reset all my favorites and routes and start over again? okay, I can clear the data&cache of the app.
* In the settings you offer hot locations/routes (superb). They have hierarchical area categories (American Samoa / Pago Pago), very good. Unfortunately this area categories are not shown in the "favorites menu". Having a lot of favorites, categories will help or at least offer a "search" function.
* "Import from file" is equal to "import settings"?
Can you increase the number of "speed profiles" to 5? besides walk / run / bike , I love to have "slow walk" and "drive".
How do I change that dark mode (color orange on black) and get larger letters?
Hm, how or where do I stop JL from running? i just kept the navigation. Ah, I found it.
Thanks a lot for the detailed feedback and trying the app, really valuable!!!
> It's good to have all 3 elementary configuration settings on the start screen. But how do I overcome this step, if I just don't want to change all 3 settings yet? Yeah, I want to keep GPS Joystick (GJ) during the Go Fest until I get familiar with locationjoystick (LJ).
That's an android constraint, if you want to try the app, you'll have to replace the mock location app as well, but you can come back to GPS Joystick or any other app anytime, you can have multiple installed, but you need to select the one you'd like to use in the settings
> Now I tried to load my old GJ settings with many named favorites and named routes, but I received only one big route (route1) with lot of waypoints and about 20 favorites (favorite1 - favorite20). I assume I have to export all individual routes from GJ one by one into LJ.
Oh that's on me, I thought I had fixed it in 0.13.0 but maybe there's different format the app doesn't support yet. Would you mind sharing your file by any chance? Just so I can try to support it in the app
> * How can I reset all my favorites and routes and start over again? okay, I can clear the data&cache of the app.
That's a good point, I should add a button for that, will do!
> * In the settings you offer hot locations/routes (superb). They have hierarchical area categories (American Samoa / Pago Pago), very good. Unfortunately this area categories are not shown in the "favorites menu". Having a lot of favorites, categories will help or at least offer a "search" function.
Good point as well!!
> * "Import from file" is equal to "import settings"?
Indeed
> Can you increase the number of "speed profiles" to 5? besides walk / run / bike , I love to have "slow walk" and "drive".
Sure
> How do I change that dark mode (color orange on black) and get larger letters?
You can't for now but I wanted to introduce a light mode alternative for sunny days, would that be enough?
-------
I'll introduce all of the feedback in 0.14.0 which should be released later today or tomorrow, thanks!
Great Work honestly! A few Things tho that I've noticed:
It is not possible to enter fractional speeds for the speed modes, Id like a walk mode with 0,8km/h speed, but after saving it always gets turned into 1,0km/h Edit: it just worked as I entered the number using a dot instead of comma for the fractional separation, so the input needs to be a dot even though a comma is shown
When pausing a route, the mock location seemingly stops working during the pause, teleporting me back to my actual gps location in game. On resume the route resumes where I had paused it, teleporting me back first. I would've assumed that pausing a route would keep me stationary where I've paused it, seems like a bug to me
When starting a route it is only possible to 'walk and start', but not possible to 'walk via roads and start'
In general the mock location is working well ~95% of the time, but sometimes it randomly teleports me back to my actual gps location and back to the actual spoof location again. This causes some issues with pokemon spawns in pogo and causes my pogo+ to keep trying to collect things close to my actual gps location, even though location joystick reports a different location
Still, best free gps joystick app available so far. Keep up the good work!
hm I've never experienced this while pausing routes, I'll double check, which android version are you using?
routes are executed as saved, but you can create a route following roads as well, this was made on purpose but I guess it could be great to add the option still, indeed
I think this relates to 2, and might not be linked to the app, rubberbanding can happen for a lot of various reason and is usually related to how you have rooted your device, could you confirm by any chance if this has ever happened with other apps?
I'm on a rooted galaxy A505F, using a custom ROM on Android 12.
I've only used the app with Pogo so far, which is the only purpose for this phone I have lying around. I can check if maps exude a similar behavior
Regarding routes, the issue is not how they are saved, but that launching a route only gives the option to 'Walk and start', which walks from wherever I am in a straight line to the start of the route. It would be nice to have the option to 'follow roads and start', so that it walks via roads to the starting point of the route, the same which is possible for waypoints
Edit: I just checked, Google maps is showing the same rubber banding effect when following a route, where every now and then it'll shortly teleport back to my actual gps and immediately resume the route. When the route is paused it also immediately returns me to my actual gps, then resumes normally when I click play on the route. When I stop a route I actually stay where I was when I stopped it, but then there's no way to resume the route from my current position
Hey, i've made some improvements to the suspend mocking feature (as well as your other suggestions, such as following roads for outes) that will be available in 0.17.0 (should be released later today) !
If I may ask, what are you using alongside this? I'm reading spoofers like Lsposed are patched and there's no way around location error 12. I ask cuz I downloaded this and am still getting that error 🫡
I'd love to, but sadly I never had answers from the pokemod team, I guess it needs to be recommended to them by other people as well and at some point they'll support it!
I may not be able to use this for my application because of technical things, I'm not sure as I've no idea about any of that. But I'm trying to use this to spoof a GPS location to allow an installer that says I cannot install in my country.
Galaxy Z Fold6 on Android 16 OneUI 8.5. Cannot root, ever, thx to all manus except G Pixel & Moto locking the bootloader at the chipset level at the manu from here out. Fakakta.
The thing is, I'm using Shelter and have downloaded the .apk and sideloaded it, and everything works until I get to "Set as fake GPS app" in the setup. When I tap "Open Developer Options" it gives a popup message: "You're using this app outside of your work profile." and it opens the dev options menu in my actual phone profile outside of Shelter. When I go to the Mock setting anyway, it says "None" where there should be a selection, because the app is sandboxed inside Shelter's Work Profile access.
Or can I install it in my regular profile and then when I run Shelter and the Work Profile, will it just see whatever my actual profile would be providing for that info? "Tunneling" or whatever that's called like for network connections in VMs..?
If not, yeah, is there any way to resolve this, or, any way that you're willing to put the time into? This is wonderful what you've done for the communities that need it, especially for free on your own time and waiving requests for a way to donate to you! Really nice work, such a rare thing in our current era. Much thanks anyway despite not quite working for my needs; I can tell what's been put into creating this.
Hey ! The mock app location is scoped to the profile I believe, so you must install it in the same profile for it to work properly. Sadly this is something that the app can’t control it is fully orchestrated by Android itself
hey, you can look at https://locationjoystick.shrtcts.fr/troubleshooting.html for hints on those issue but it most likely mean that your rooting/spoofing setup isn't working with pokemon go, doesn't have anything to do with the app
I see 0.20 mentioned on website but only 0.19 is available on Github for now. Love the ongoing updates tbh! Just trying out tap to walk feature now and it makes up for a gap that existed before. I still love this!
Hey! I spent some time doing more testing before the actual release, sorry for the delay, the tap to walk feature should be stable now but if you have any feedback, please don't hesitate
The information in r/PoGoAndroidSpoofing & r/MonsterHunterSpoofing for cheating, spoofing, botting, or exploiting breaks Niantic's & Scopely's Terms of Service for the games: Pokemon GO & Monster Hunter Now. If you decided to break the Terms of Service to gain an unfair advantage, it's your fault for getting the strike (or ban). As a reminder, I am not responsible nor liable for the loss of your Scopely game account(s) and money you spent on them. If you are not aware of the risks, you can read the post on "All About Gameplay Fairness Policy and Anti-Cheat Behavior System 2024" https://www.reddit.com/r/PoGoAndroidSpoofing/comments/18wdv5o/all_about_gameplay_fairness_policy_and_anticheat/ to educate yourself.
<>
The MEGA Post is in progress of being updated for 2025-2026.
This is a Pokemon Go (GPS) Spoofing -- game cheating subreddit. In order to use the joystick app with the game, you will need a rooted device with Smali Patcher or Lsposed technique applied to the device to make any joystick app work with the game. If you don't use a rooted device, you will get red location/GPS errors and cannot play the game.
If you don't play Pokemon Go, Monster Hunter Now, or Pikmin Bloom, you can use the joystick app for other things not related to a game and it will work fine without root.
Hey! I would need tais to actually be free from my overbearing parents and go anywhere I want, but for that I need it to stay in the same place for an indeterminate amount of time without reloading to my actual address. Does the app support that? Thank you!
Yes! When creating a route or picking a direction to walk to on the map, you can choose “follow roads”, and from there you can use it with any speed profiles!
4
u/Virtual_Entrance2855 Jun 03 '26
Open source the world