This is just a GPS track recorder. While it's recording tracks, it has all the data necessary to show movement information. So a bike computer-like screen was added (although it should work for cars and other vehicles). In addition, there is a screen which shows the current date and time along with a QR code. Both are updated once a second. Use your camera to take a picture of the screen and this can be used to sync the phone time with the photos from the camera. Note, this app does NOT sync the phone's time directly with the camera. The idea is to take a photo with the QR code, parse the QR code and sync the QR code photo's time with the timestamp embedded in the QR code. Use gsp2photos to use the results from this app to geotag your photos!
After using gps4camera to capture the QR code and the gps tracks, use gps2photos to geo tag the photos. Using the gpx file from gps4camera, a photo of the QR code in gps4camera (see the QR code tab), and the photos from your camera, drag all of these into gps2photos. Once in, press the Geotag button to start geotagging!
If your camera doesn't have GPS. A camera dedicated GPS unit is an option. But it is expensive, likely has to be charged, must be carried along, turned on, tethered (wirelessly or with a cable) to your camera, and likely doesn't perform well while indoors.
Your phone has GPS. It can track location while indoors. It likely has been charged up. It also very likely to be with you. Just run gps4camera and hit start. All tracking stays on your device and YOU decide how and when to share it.
Privacy is critical. The only time your current location is used is to fetch the current temperature and this is done sparingly and ONLY when the app is recording your current location. Your location is recorded to your device and only your device. You control when, where, and how you share your gps tracks. (You can send your tracks by AirDrop, email, text, or any other sharing mechanism you have installed!)
View the source code on github.com
No charge. It's no risk to try, but also use at your own risk.
Start gps4camera. Press start on the GPS tab to start location recording
Switch to the Sync tab and take a photo of the QR code using the camera you wish to geotag photos to. Try to fill the view finder with the QR code. Use a high enough shutter speed and ISO to ensure there's no motion blur.
Take photos care free knowing gps4camera is recording (to only your device) your location. You control when and how to share your gps tracks!
Stop gps4camera's recording.
In gps4camera, tap the Files tab. Select the most recent track (at the top). (You can also slide it to the left to reveal share and delete buttons.) On the map, tap Share (top right). Select GPX file format and then select a share mode. Sharing by AirDrop to a Mac with AirDrop enabled is a quick and easy way to share. The other sharing options are fine too!
Download your camera's photos to the computer with the GPX file from the previous step. Make sure one of the photos contains the QR code from gps4camera.
Run gps2photos. Drag into gps2photos the GPX file and the photos from the camera, including the QR code photos. If everything checks out, gps2photos process button will be enabled. Click to start processing.
Make sure to have exiftool installed before runnign gps2photos. If it's not installed, quit gps2photos, install exiftool, then run gps2photos.
Your photos should now be geotagged. Load them in your favorite photo viewer with mapping capabilities to verify.
Free!