iOS Development: Apple Maps vs OpenStreetMaps

Displaying information on the map is often required when developing applications. That is why detalization and accuracy are very important. Also, having an offline access to the cartographic information when using your mobile phone may become an issue. All possible solutions to the stated problem will be discussed below.

Apple maps: drawbacks

The fact that Apple has replaced the time-tested Google maps  with their embedded  map service has put into rage a lot of its users. It has been criticized for numerous errors and poor map detalization million times. Since that time some errors have been corrected, but the problem of detalization is still relevant for USA , Western Europe. and some Asian countries. For example, in Russia, even in Moscow, according to Apple there are no buildings, and some cities look like cross-roads in the fields.
Another drawback of Apple maps is the difficulty to use it in the offline mode. The system can display the cached data if you do not have internet connection. However, it displays only those regions that a user viewed before. And there is no guarantee that one day the operating system of your iPhone won’t delete everything that was stored in it. It would be unpleasant to get into such a situation when travelling to some distant place where there are problems with the Internet or expensive roaming charges.

The alternative - OpenStreetMap

OpenStreetMap is an open project that is aimed at getting  a free detailed map of the world. The project is constantly updated and improved by volunteers around the world. Any registered user can make changes and additions to the map. This ensures users high accuracy and detalization of cartographic data.
To illustrate our point, let’s compare several locations as shown on Apple embedded Maps and on OpenStreet Map Service

Pyongyang, the Capital of North Korea

 

Pyongyang-Apple.webp

Apple Maps

Pyongyang-OSM.webp

OSM

 

Washington, Unites States

Washington-Apple.webp

Apple Maps

Washington-OSM.webp

OSM

Barnaul, Russian Federation

Barnaul-Apple.webp

Apple Maps

Barnaul-OSM.webp

OSM

There is no doubt that OSM is much more convenient and accurate in maps detailization. There are several ways of how we can use them in our applications.

Using OSM maps when developing iOS-applications

You can use the OSM maps in your project in several ways. We will consider the integration and use of maps with the help of MapBox iOS SDK. MapBox iOS SDK is a toolset for creating mapping iOS applications. Using it is like working with a standard MapKit framework. But it has  a much greater flexibility in terms of visualization, customization and offline use. Moreover, this SDK is an open source. MapBox SDK can be attached to the project in several ways. You can find the description on the official website. Choose the most suitable for you. After connecting the SDK, we need to create an instance of RMMapView initialized with the source point of RMOpenStreetMapSource class in order to display OSM-map.

As a result,  a well-detailed map of the world can be seen in our application. It was very simple, wasn't it?

Pre-caching and offline mode

Now let’s discuss how to help a user to download a map region in cache in advance and use a map if there is no Internet connection. First, we will add a UIProgressView  to the screen to display the progress of a map downloading process and two buttons – the load button and the shift mode button. Then we transmit our own RMTileCache object into the map with the one year cache lifetime, for example.

To begin asynchronous data loading and progress tracking we will implement a processing method of tapping the button "Download" and support RMTileCacheBackgroundDelegate protocol. For example, we will download a map of Pyongyang which is displayed as a simple sign in the field and nothing around on the Apple's maps.

To switch the mode we use the property retryCount in RMOpenStreetMapSource. For the offline mode we set download retry number equals to 0, and for online – to return the default value that equals to 3.

Finally the user can pre-download the map of the city that he is going to visit. After that he just needs to switch the application to offline mode.

Result

As we have seen, there is an excellent alternative to Apple maps which is quite easily integrated with applications. And if you implement an application designed for use in areas with insufficient Apple maps detalization, or it's unacceptable for you to have an offline mode, so when searching for Apple maps alternatives think about using OpenStreetMap and MapBox SDK.

Links

http://www.openstreetmap.org

https://www.mapbox.com
open
related
Why the Apple and Google app store monopoly? Top Trends for Food Tech and Automation in 2023 Serial Port RS232 and ANDROID Android vs iOS App Development: Which is Better for your Business Project?
recent
VisionOS App Development: The Era of Spatial Computing EdTech 2024: Software trends for Teachers, Students and Headmasters The Heartbeat of AI: Ensuring AI Ethics in Education and Healthcare A Comprehensive Guide to Using Low-Code/No-Code Platforms for MVP Development
recommended
Everything You Want to Know About Mobile App Development App Development Calculator Infographics: Magora development process Dictionary
categories
News Technologies Design Business Development HealthTech IoT AI/ML PropTech FinTech EdTech Mobile Apps Discovery Transport&Logistics AR/VR Big Data
Logo Magora LTD
close
Thank you very much.
Magora team

Grab your e-book: Design to attract more buyers

Logo Magora LTD
close
Get in touch
Logo Magora LTD
close
Thank you very much.

Your registration to the webinar on the 27th of September at 2 p.m. BST was successfuly completed.
We will send you a reminder on the day before the event.
Magora team
Registration for a webinar

"Let Smart Bots Speed up your Business"
Date: 27.09.2018 Time: 2 p.m. BST
Do you agree to the personal data processing?