iOS Tracker

For the last couple of weeks, I’ve been working on a native application for GpsGate called the iOS Tracker. It has a simple purpose: enable real-time position reports to a GpsGate Server from an iOS device. However, this sounds like an easy task. It actually wasn’t. I had to make sure the app would use as little battery life as possible without the need for the user to set anything. To achieve that, I put a geofence around the user and turn the GPS accuracy down to the minimum if he is stationary for 5 minutes. Thus, the app can continue running in the background, and when the user moves outside the geofence, I can simply set the GPS accuracy back to where it was.

The app is written in Swift, and I’ve used a couple third-party libraries like Alamofire for the network connection, ObjectMapper for JSON objects, and Realm for the database. The UI is a simple UITableView with custom cells for validation.

iOS Tracker #1 iOS Tracker #2

App Store link:

Asset Protection

When I started working for GpsGate my first task was to read about React Native as much as I could. Asset Protection is the result of my readings. It is kind of a client application for a GpsGate Server. Let’s say you have a car. Put a GPS device in the car and you can use this app to get a notification when your car is being stolen. Then you can follow your car’s actual location so you will have a chance to get it back.

The app is a React Native application for both iOS and Android. A couple third-party open source libraries were used for reading QR codes and receiving push notifications.

Asset Protection #1 Asset Protection #2 Asset Protection #3

App Store link: