Geofency is a time and location tracking app for iOS. I’ve been using it for many years to keep track of my whereabouts. At times, this information can come in quite handy.
The app does not track your movements continuously. Instead, it uses Geofencing and iBeacon technology, which uses less battery. The app will note the time and location every time you stop somewhere for a few minutes.
After returning from a month-long overlanding trip last year, I couldn’t remember half of the places I visited. So, I exported the data from Geofency (see sample above) and noticed that the location description could use some work. For example, “5617 Barnes Rd” doesn’t tell me much.
The solution was to set up a project on Google Maps, get my API key, and enable billing. Google gives you a $300 credit for a 90-day trial period. I would recommend you do a couple of things. First, check out Privacy.com and create a credit card with a low monthly spending limit. And use that credit card to enable billing for your Google Maps project. Second, restrict your Google Maps API key as much as possible. I only use it from home and have a static IP, so I tied my key to my home IP.
The script (see below and on my GitHub page) will take the Geofency data in CSV format and use Google Maps API to get better location details. Below is a sample output.
Now you can take this output to the GPS Visualizer site and convert it to GPX or KML format. Make sure your data has a header and “comma” is selected as the field separator (see screenshot below).
The resulting GPX file can be used to generate a map in various mapping applications, including Google Maps and GPS Visualizer itself. And the fruit of my labor looked something like this:
Experienced Unix/Linux System Administrator with 20-year background in Systems Analysis, Problem Resolution and Engineering Application Support in a large distributed Unix and Windows server environment. Strong problem determination skills. Good knowledge of networking, remote diagnostic techniques, firewalls and network security. Extensive experience with engineering application and database servers, high-availability systems, high-performance computing clusters, and process automation.