Share GPS
Android app for sharing GPS data with mapping applications

Use the table below to navigate to the function help is needed with.

Basic Operations - Status
NMEA Bluetooth Connections
NMEA USB Connections
NMEA TCP Connections
GPSD Server Connections
KMZ SCP Connections
KMZ Google Drive Connections
KMZ Dropbox Connections
KMZ Local File Connections
KMZ Send To Connections

To exit Share GPS, simply press the back button. To leave the UI, but have Share GPS running in the background, press the home button. Share GPS leaves a Notification to indicate it is still running.

The status tab lists information pertaining to the GPS location information and track information. For each of the following, press the value to copy to the clipboard, long press to change the units used.

Status No Fix, 2D Fix (3 Satellites used in fix), and 3D Fix (> 3 Satellites used in Fix)
Latitude/Longitude GPS coordinates, 3 different formats available
Altitude Altitude, tends not to be very accurate on mobiles
Direction Direction and bearing in degrees
Speed Speed at this moment in time
Distance Traveled When tracks are on, the total distance traveled is kept. This will be saved until tracks are cleared
Distance From Start This is the distance between the current location and the location where tracks were turned on the first time ("As the crow flies"). This will update even when tracks are off. Starting and stopping tracks does not change the start location, only clearing and re-starting does
Track Time The time tracks have been on, does not reset when starting and stopping tracks, only when clearing


Share GPS can save tracks to be sent via a Connection at any time. Press Start Track to begin saving tracks. Tracks will be saved at the same rate as the GPS timer setting (1 sec default). Press Stop Track to stop saving tracks. If Start Track is pressed again, tracks will pick up where they left off. Tracks are not deleted until Clear Track is pressed, or if "Stop and delete tracks on exit" is selected in preferences. Tracks will continue to be saved when the app is in the background.


Share GPS keeps a Notification available to indicate the app is still running when it is in the background. By default, it also shows the current speed and direction. This can be customized by the user to show any of the status items via the settings (Premium feature).

Connections are at the heart of Share GPS. To add a connection, press the ADD button at the bottom of the Connections tab and follow the help for the type of connection desired. To start a connection, just press it. To stop a connection, long press it and choose Disconnect. To edit, delete, or set other options, long press the connection while idle.


Share GPS will indicate the status of a connection once the user starts it. See the following;

  • Idle - Currently Idle and not running
  • Connecting - Attempting to connect to device or cloud drive
  • Connected - All good and sending data periodically
  • Connected - Connection working, but link is slow for amount of data being generated. If consistantly yellow, user may consider using a slower GPS or File write timer sending data.
  • Connected - The data to be sent has built up so much that Share GPS begins dropping some of the data. User needs to slow the GPS or File Write timers or use a faster data link.

Data Types

NMEA NMEA is the most standard format for GPS data. Share GPS can send the NMEA sentances from the mobile to other devices via one of the connection types. NMEA is continuously provided by the mobile and therefore can be used for real-time location tracking. It can be used with various mapping software such as Google Earth, OpenCPN, etc. and can be useful for providing GPS for devices that don't have it.
KML Placemark KML (Keyhole Markup Language) is a format for location that is compatible with Google Earth and other mapping programs. Share GPS supports placemark files that represent a single location. Share GPS can periodically send the file with updated location data for real-time tracking (Google Earth can be setup to periodically read the file). It is sent at a rate according the File Write setting. Set Location (long press the connection while idle) can be used to set the KML location to the current location and not update it. It can then be sent once at a time up to the user. KML files are zipped up into KMZ files that can have custom icons added, pictures, descriptions and embedded links added as well.
KML Track Tracks are a great way to save footprints of the user's current activity whether that be walking, hiking, biking, driving, etc. The user has the ability to start and stop tracks at anytime, clear tracks, and control whether or not the app clears and deletes tracks on exit. The tracks are stored in the applications local cache and can be retrieved at any time by creating a connection on the Connections tab. Tracks are sent in KMZ format and use the gx:track format compatible with Google Earth.

Connection Types

Bluetooth Connections Currently, Share GPS supports sending NMEA data over a bluetooth connection to a paried device. It uses the Serial Port Profile (SPP) for doing this. By default, android does not advertise this profile during pairing, so it helps to have Share GPS running during this process (Share GPS will start pairing for un-paired devices) to ensure the right drivers and profiles are installed for the device. See the Bluetooth help for more details.
USB Connections When using an android mobile with developer mode enabled it is possible to use the USB connection to the PC to send NMEA data. The PC needs ADB (android debug bridge) installed. This will re-direct NMEA data to a TCP port on the PC for use with a mapping program or for redirecting to a serial port for more options. See help for more details.
TCP Connections TCP/IP connections are used to send NMEA data to PCs and other devices that can accept it. Share GPS can act as a server or client. It's recommended to use it as a server to avoid Firewall issues on a PC. It many cases, it is necessary to re-direct tcp data to a serial port. See the help for TCP/IP for details.
SCP Connections SCP can be used to send KMZ files to PCs and other devices running an SSH server. The RSA host keys for the servers are kept and tracked. The user has the ability to clear the key table in case things get messed up. The user also has the option of storing the server password (encrypted) during connection creation or to enter it realtime when connecting (and not never storing it). See the SCP help for more details.
Google Drive Connections Drive is a great way to share KMZ files with real time updates. The user is able to choose the name and directory in drive to store the file. There is a file write timer setting in preferences that allows the user to specify how often to update the file. The first time it is used, the user will need to authenticate the account.
Dropbox Connections Dropbox is another great way to share KMZ files with real time updates. The user is able to choose the name and directory in drive to store the file. There is a file write timer setting in preferences that allows the user to specify how often to update the file. The first time it is used, the user will need to authenticate the account.
Local File Connections Share GPS can also save KMZ files to the SD card on the mobile. The user can specifiy the directory and filename to be used. This is useful for storing files to be offloaded later on. When (and if) MTP works better on android, it could potentially be used for real-time updates when connected to a PC via USB.
Send To Connections The Send To option is used for one time file sending to another application on the mobile. When the user connects with this, they are presented with a list of provider applications on the mobile. For example, if the user chooses Gmail, the KMZ file will show as an attachment to an new email. Note that some apps will work, some won't, YMMV.