How To Develop Tracking App
From looking up directions on Google Maps to hailing a taxi via Uber, geolocation apps have become a backbone for many thriving businesses. But can you develop an app that would enjoy similar success?
Foursquare has built a loyal audience of 60 million users by letting them check into restaurants. Uber reached a market worth of $72 billion by connecting passengers and taxi drivers. Starbucks has increased sales by adding local notifications.
So how to make a geolocation app that would enjoy similar success?
Below are the insights we’ve gained when developing Juvo, a native location-based app for Norwegian communities.
Read the whole article or jump straight to the point you’re interested in:
- #1 Opt-in for geolocation
- #2 Privacy concerns
- #3 Data protection
- #4 Low user engagement
- #5 Location accuracy
- #6 Background location tracking
- #7 App Store approvals
- #8 Battery drain
Choose your tech stack
Your tech stack will be determined by the platform (iOS/Android/Web) and business objectives.
To build a geolocation app, you’ll need two APIs — one to learn a user’s location and another to put those coordinates on a map.
These APIs provide all the tools you need to integrate location-based services (LBS) into your app without the need to develop them from scratch..
iOS geolocation
To locate an iOS device, you can use:
- Google Maps API, the most popular map service in the world. It’s localized into most languages and is incredibly easy to integrate. You can customize the map’s colors to fit your brand image, modify road density or remove labels from the map.
- Apple’s Core Location API allows to locate a device and determine the direction it faces, its altitude or the proximity to an iBeacon..
To display the location on the map, you can use Google Maps SDK or Apple MapKit.
Both are pretty accurate but there are some important differences:
- Data quality is still one of the biggest aces up Google’s sleeve. The map shows building outlines, even in tiny villages, as well as a street view mode for major cities across the world (except in China, where Google Maps is unavailable). As explained by a former Apple Maps cartographer Justin O’Beirne, Google’s data is generally more extensive and accurate.However, this gap is rapidly closing. In 2020 Apple has completed a rollout of a brand-new US map that boasts a much higher level of environmental detail along with a 3d view for major US cities. The company is planning to bring the update to Europe somewhere in 2020.
Source: justinobeirne.com
- Routing. Apple MapKit lists several routes for driving/walking (and detailed public transit schedules that’s only available in major US cities). Google provides a single route for driving/taxi, walking, cycling, or public transit in most cities around the globe along with more accurate traffic info due to Waze partnership. It also allows planning your route by adding intermediate points.
- Augmented reality is only available in Google Maps.
- Offline maps are unavailable in MapKit which is another minus.
- Privacy is a big ace up Apple’s sleeve. Most navigation data is stored on the device and the user location is obscured when making a search. Apple doesn’t collect the search/location history and associates all collected data with randomized IDs.
- Indoor maps. Google provides indoor navigation for about 10,000 buildings around the world. Starting with iOS 11, Apple is adding detailed maps for major airports and malls. It plans to expand this feature offering a seamless transition between outdoor and indoor navigation.
- Pricing and data limits. MapKit is free beyond Apple Developer Program membership and doesn’t have limitations on the number of API requests/day. Google features a pay-as-you-go model. The pricing is similar across the globe despite significant variation in monetization potential. You get $200-worth of free requests per month which translates roughly to 100,000 static map loads or 40,000 direction calls. However, geolocation mobile apps with a simple dynamic map can use the service for free.
In many cases, the choice is purely stylistic. Featurewise, Google Maps remains the best choice for location based apps on iOS, unless you require a massive amount of API calls or target locations like China/US.
Android geolocation
To locate Android devices, you can use:
- android.location package which is no longer recommended by the platform.
- Google Location Services API which is easier to work with, provides more accurate results and has lower power consumption. It allows you to:
- Locate the user’s position via GPS, Wi-Fi, Cell ID, or A-GPS.
- Detect user movement and react to these changes with notifications or other actions.
- Determine the distance to selected places such as stores or cafes which can be used to set up geofences.
Foursquare has built a loyal audience of 60 million users by letting them check into restaurants. Uber reached a market worth of $72 billion by connecting passengers and taxi drivers. Starbucks has increased sales by adding local notifications.
So how to make a geolocation app that would enjoy similar success?
Below are the insights we’ve gained when developing Juvo, a native location-based app for Norwegian communities.
Read the whole article or jump straight to the point you’re interested in:
- #1 Opt-in for geolocation
- #2 Privacy concerns
- #3 Data protection
- #4 Low user engagement
- #5 Location accuracy
- #6 Background location tracking
- #7 App Store approvals
- #8 Battery drain
Choose your tech stack
Your tech stack will be determined by the platform (iOS/Android/Web) and business objectives.
Get Arju nay’s stories in your inbox
Join Medium for free to get updates from this writer.
To build a geolocation app, you’ll need two APIs — one to learn a user’s location and another to put those coordinates on a map.
These APIs provide all the tools you need to integrate location-based services (LBS) into your app without the need to develop them from scratch..
iOS geolocation
To locate an iOS device, you can use:
- Google Maps API, the most popular map service in the world. It’s localized into most languages and is incredibly easy to integrate. You can customize the map’s colors to fit your brand image, modify road density or remove labels from the map.
- Apple’s Core Location API allows to locate a device and determine the direction it faces, its altitude or the proximity to an iBeacon..
To display the location on the map, you can use Google Maps SDK or Apple MapKit.
Both are pretty accurate but there are some important differences:
- Data quality is still one of the biggest aces up Google’s sleeve. The map shows building outlines, even in tiny villages, as well as a street view mode for major cities across the world (except in China, where Google Maps is unavailable). As explained by a former Apple Maps cartographer Justin O’Beirne, Google’s data is generally more extensive and accurate.However, this gap is rapidly closing. In 2020 Apple has completed a rollout of a brand-new US map that boasts a much higher level of environmental detail along with a 3d view for major US cities. The company is planning to bring the update to Europe somewhere in 2020.
Source: justinobeirne.com
- Routing. Apple MapKit lists several routes for driving/walking (and detailed public transit schedules that’s only available in major US cities). Google provides a single route for driving/taxi, walking, cycling, or public transit in most cities around the globe along with more accurate traffic info due to Waze partnership. It also allows planning your route by adding intermediate points.
- Augmented reality is only available in Google Maps.
- Offline maps are unavailable in MapKit which is another minus.
- Privacy is a big ace up Apple’s sleeve. Most navigation data is stored on the device and the user location is obscured when making a search. Apple doesn’t collect the search/location history and associates all collected data with randomized IDs.
- Indoor maps. Google provides indoor navigation for about 10,000 buildings around the world. Starting with iOS 11, Apple is adding detailed maps for major airports and malls. It plans to expand this feature offering a seamless transition between outdoor and indoor navigation.
- Pricing and data limits. MapKit is free beyond Apple Developer Program membership and doesn’t have limitations on the number of API requests/day. Google features a pay-as-you-go model. The pricing is similar across the globe despite significant variation in monetization potential. You get $200-worth of free requests per month which translates roughly to 100,000 static map loads or 40,000 direction calls. However, geolocation mobile apps with a simple dynamic map can use the service for free.
In many cases, the choice is purely stylistic. Featurewise, Google Maps remains the best choice for location based apps on iOS, unless you require a massive amount of API calls or target locations like China/US.
Android geolocation
To locate Android devices, you can use:
- android.location package which is no longer recommended by the platform.
- Google Location Services API which is easier to work with, provides more accurate results and has lower power consumption. It allows you to:
- Locate the user’s position via GPS, Wi-Fi, Cell ID, or A-GPS.
- Detect user movement and react to these changes with notifications or other actions.
- Determine the distance to selected places such as stores or cafes which can be used to set up geofences.
Source: Medium.com
To visualize a location on a map, you can use:
- Google Maps API and MapView class. You’ll have to install the relevant Google App libraries before implementing the map functionality, otherwise the API isn’t supported by Android.
- Google Maps Directions API is used to provide directions and plan routes. It supports public transit, cycling, walking, and driving.
- Google Distance Matrix API determines the expected travel time depending on the chosen route, means of transportation, and traffic conditions.
Adding more location-based features to your iOS/Android app:
- MapBox is an interesting alternative to Google Maps. The supported services include navigation, search, augmented reality, automated driving,and extensive map customization. The pricing is free up to 25,000 monthly active users.
- Google Places API. Receive detailed info about places nearby including names, descriptions, similar venues, and reviews from 1+ billion users. The database contains 150+ million businesses all over the world. Use the API to power your local business search, enhance navigation, provide directions and information about landmarks.
- Foursquare API for user recommendations, reviews, and ratings. Use Pilgrim SDK to understand more about your users and send targeted geo-notifications.
- Urban Airship API for local notifications and in-app messages. You can export data and statistics from push messages to get insights into your user base. View reports in UA dashboard or integrate the API with your own reporting center.
- Facebook Places, Yelp API, and TripAdvisor API can offer additional insights into local businesses.
HTML5 geolocation for progressive web apps
If you want to develop a web application or a progressive web app (PWA) with geolocation, you can use W3C Geolocation API. It’s supported by most browsers including Chrome and Safari but works only via https.
Another option is HTML5 geolocation API (also developed by W3C but has lower performance). As it works with HTML5 code written in JavaScript, the API requires the browser to support HTML5.
The API can show user location on the map as well as display recommendations and directions.
Finally, you can use Google Maps API or MapKit JS from Apple (with a daily limit of 250,000 map views and 25,000 API calls).
Further reading: 6 things you can learn from the best progressive web apps.
Source: Medium.com
To visualize a location on a map, you can use:
- Google Maps API and MapView class. You’ll have to install the relevant Google App libraries before implementing the map functionality, otherwise the API isn’t supported by Android.
- Google Maps Directions API is used to provide directions and plan routes. It supports public transit, cycling, walking, and driving.
- Google Distance Matrix API determines the expected travel time depending on the chosen route, means of transportation, and traffic conditions.
Adding more location-based features to your iOS/Android app:
- MapBox is an interesting alternative to Google Maps. The supported services include navigation, search, augmented reality, automated driving,and extensive map customization. The pricing is free up to 25,000 monthly active users.
- Google Places API. Receive detailed info about places nearby including names, descriptions, similar venues, and reviews from 1+ billion users. The database contains 150+ million businesses all over the world. Use the API to power your local business search, enhance navigation, provide directions and information about landmarks.
- Foursquare API for user recommendations, reviews, and ratings. Use Pilgrim SDK to understand more about your users and send targeted geo-notifications.
- Urban Airship API for local notifications and in-app messages. You can export data and statistics from push messages to get insights into your user base. View reports in UA dashboard or integrate the API with your own reporting center.
- Facebook Places, Yelp API, and TripAdvisor API can offer additional insights into local businesses.
HTML5 geolocation for progressive web apps
If you want to develop a web application or a progressive web app (PWA) with geolocation, you can use W3C Geolocation API. It’s supported by most browsers including Chrome and Safari but works only via https.
Another option is HTML5 geolocation API (also developed by W3C but has lower performance). As it works with HTML5 code written in JavaScript, the API requires the browser to support HTML5.
The API can show user location on the map as well as display recommendations and directions.
Finally, you can use Google Maps API or MapKit JS from Apple (with a daily limit of 250,000 map views and 25,000 API calls).
Further reading: 6 things you can learn from the best progressive web apps.
If you want your tracking app, geolocation app to be the best with all your imagine features, contact us on fiverr by fiverr.com/smart_eq





