UPDATE: Sept. 10th 2016 – Niantic has updated to v0.37.0 and this METHOD STILL WORKS ALSO!
UPDATE: Sept 24th 2016 – This method STILL WORKS on v0.39.0 and v0.39.1 update!
All you need is any Android smartphone or tablet running on latest Android 6.0 or 6.0.1 Marshmallow. (You can check this under Settings->About Phone->Android Version, if you have newer devices like Galaxy S7, S7 Edge, Note 7, HTC 10, OnePlus 3, or LG G5, you already have Marshmallow.)
Stuff you need:
>FlyGPS : DOWNLOAD
Once you have downloaded and installed FlyGPS you can proceed further .
So, Let’s begin 😉
Step 1. Go into Settings->About Phone and hit the “Build number” about 5 times until it says you have enabled Developer mode.
Step 2. Hit the back button once and you will see “Developer Options” menu, tap on that. Scroll down to “Mock Locations” then choose “FlyGPS” app.
Step 3. Go into your Location settings and set your GPS settings to “High Accuracy”.
Step 4. Also make sure “Location history” is set to ON.
Step 5. Launch FlyGPS app and choose where you want to start the game.
Step 6. Tap on the location you set and tap on “GPS Service Run”.
Step 7. Tap on “JoyStick Location Mode – (Pokemon)”.
Note: This hack does not hide “Mock Locations” which means Niantic will know you are using this hack. But Niantic hasn’t permanently banned people for using this hack. Just use your common sense. If you use this hack to reach Level 30, they will probably ban you permanently. However, if you play Pokemon Go occasionally and for killing time entertainment, they won’t ban you. You may get soft-banned but you can easily spin the wheel at a nearby PokeStop 30+ times to get unbanned or simply wait a few hours which will also unban you.