Overview
An outdoor navigation system was required that offers a user experience tailored to persons with impairments, notably the blind. The application should have a user-friendly interface, easy accessibility, intersection alerts, and friend-locating functionality. Travancore Analytics utilized TypeScript to develop an Outdoor SDK node module with APIs for outdoor positioning.
- Nearby POIs are retrieved using Foursquare and the MKLocalPointsOfInterestRequest API for iOS 14 and higher.
- Geocoder and ReverseGeocodeLocation are used for reverse geocoding implementation in Android and iOS SDKs.
- Our outdoor navigation SDK helps people with disabilities navigate better, with features like POI search and movement management.
Case
Have you ever considered how much time you spend navigating and how reliant you are on navigation tools? According to Google Maps, 77% of all smartphone users use navigation apps regularly. Furthermore, according to surveys, people commute for roughly 30 minutes every day on average worldwide. These are fascinating values, but consider how they affect persons with impairments.
Our client is a company dedicated to providing people with impairments, notably blind people, with quick and accurate maps of interior spaces that can be navigated with little effort and at the exact cost of traditional technologies. The customer already possessed an indoor navigation app for the blind and wanted to construct outdoor navigation with a similar but more advanced user experience.
Challenges
The client's main goal was to design an outdoor navigation app for the blind similar to their indoor navigation. The UI had to be simple, along with accessibility, announcements, intersections, and finding friends features. However, obtaining and processing all of the significant data required to construct an effective outdoor navigation app for the blind was challenging. The requirement was that the module gives outdoor positioning information, which should comprise the following:- Points of interest (POI) that are close to the user
- Street and intersection in proximity to the user
- Courses of the user-direction of travel, based on changes in GPS location
- Speed of the user based on changes in GPS locations
Solution
The outdoor navigation app for the blind is designed with a limited number of tabs - Routes, Location, POIs, and Settings - for convenience of use. Here waypoints are used to record and save the journey. A comprehensive route menu offers a variety of options for selecting a destination, starting with a POI. Voice instructions and commands were added to make the navigation app for the blind highly independent, just for the user app.We used TypeScript to create an Outdoor SDK node module that supports outdoor navigation solutions by offering key APIs for outdoor positioning. This SDK gives intersections surrounding the user and delivers an intersection in the user's travel direction by analyzing Open Street Map (OSM) data for that region. This data can be updated at any moment by uploading a new data file to the AWS S3 bucket and processing it with AWS Batch without requiring any changes to the node module. The SDK's search functionality uses Foursquare API services and native Android and iOS functionalities.
The POIs contain information such as the name of the POI, its distance from the user, an angle from the user, id, geolocation, and category, among other things. They can be searched by name, category, and address. iOS uses the MKLocalSearch API to search for addresses, while Android uses Geocoder. The nearby POIs are retrieved via the Foursquare service and the MKLocalPointsOfInterestRequest API for iOS version 14 and higher. Geocoder and ReverseGeocodeLocation, respectively, are used in the Android and iOS SDKs to implement reverse geocoding.
The SDK has the following advantages:
- It addresses a substantial portion of outdoor navigation needs, such as searching for POIs, discovering POIs in close proximity, determining an upcoming intersection, and determining the user’s direction and speed
- It processes OSM data to provide a solution for getting the intersection around the user as well as in the direction of movement
- Without needing to change the build, the OSM data can be updated as needed
- To add a waypoint, the user just needs to press the + button or shake the phone
Impact
We were able to design a standalone outdoor navigation SDK that can be easily integrated into any Android or iOS mobile application, which encompassed accessibility.
The SDK has the following significant implications:
- Enabled an advanced navigation system for people with disabilities
- Users may search for points of interest and get a sense of which ones are nearby
- It also allowed users to manage their movement per the application’s output