GPSLogger for Android is a battery efficient GPS logging application for Android 4.1 or newer.
https://gpslogger.app/
https://f-droid.org/packages/com.mendhak.gpslogger/ GPSLogger for Android
A battery efficient GPS logging application
GPSLogger uses the GPS capabilities of your Android phone to log coordinates to GPS format files at regular intervals. This can be particularly useful if you want to geotag your photos after a day out or share your travel route with someone. The purpose of this application is to be battery efficient to save you battery power when abroad and last as long as possible.
Menus
Many menu items
Profiles - Group preferences under profile names, such as default, nighttime, trekking, etc.
General options - Startup, imperial, debug file and version info
Logging details - File formats, folder, new file creation, frequency, accuracy
Auto send, email and upload - Settings for various destinations such as Custom URL, SFTP, OpenStreetMap, FTP, Dropbox, Google Drive, etc
Simple view
Shows your last recorded GPS point, updates when new point available
Tap any field to highlight the text
Big start/stop button. You can't miss it
Distance travelled is the total distance between all points.
Detailed view
Detailed view of last recorded GPS point
Smaller start/stop button
Features
Can log to GPX, KML, CSV, NMEA and CSV formats. Can also log to a custom URL or just the screen.
Logs GPX points as tracks and track segments
Also logs speed, direction and altitude if available
Add a description to a point using the annotate menu, gets added as a waypoint
Configure time intervals between points
Configure a minimum distance filter between points or an accuracy filter
Notification icon with coordinates and quick actions
Uses cell towers for location when GPS is disabled
Selectively choose network, gps and passive location providers
Automatically upload or email the file at set intervals to destinations such as Email, FTP, SFTP, Dropbox, Google Drive, Custom URL, OpenStreetMap, ownCloud, OpenGTS.
Share location or log files via SMS/Email (and other apps such as Facebook or Twitter depending on what you've got installed)
Start logging on phone bootup
Invoke operations from Tasker or other automation apps.
You can give it a preset file with your own values for distribution
Multiple profiles with different settings are possible