A free program for Android, by ExcellentsApps.
Fake GPS JoyStick allows you to play with your device’s location and test location-based apps. It can be used to play with friends and family by having them think that you are somewhere else, even in another country. This app allows you to enter latitude/longitude directly from the joystick.
Installation:
When installing Fake GPS JoyStick for the first time, the app will ask you to grant it root access. The reason for this is that we need to be able to install our own app, which contains a fake GPS sensor.