OSM gives better performance in various urban centres as compared to Google Maps. Google Maps are the best for online purposes. OpenStreetMap allows the users to download the maps that can be used offline also for either finding a route or identifying a location.
And those changes could directly affect the budget that most businesses and retailers have for investing in their web services. Added to this increase, Google Maps API also had some limitations in customization, and it is not an open-source option, which can affect developers' work with this product.
Google Earth Pro on desktop is free for users with advanced feature needs. Import and export GIS data, and go back in time with historical imagery. Available on PC, Mac, or Linux.
Google Maps is not free anymore, and all the maps will now receive a message that is “For development purposes only.” After the changes, you have to pay for every single view on your map from now on. Starting from July 2018, Google Maps, Routes, and Places require billing information, such as an associated credit card.
These are a really great questions! I'm a professional OpenLayers developer and fan, so I'll address your questions from that perspective.
Why would I use OpenLayers instead of Google Maps?
I would not worry at all about the long-term viability of the project. It is the premier open source client-side mapping library.
Are there any common pitfalls / problems I may encounter?
JavaScript Framework Compatibility
Are there maps available for many places?
Is there any kind of API to display roads?
Do you know any good tutorial to OpenLayers?
I hope this is useful. And I'm around Stack Overflow if you have any questions!
It's not necessarily a question of OpenLayers OR Google Maps. You can after all use Google Maps for your map background in OpenLayers. Some more specific answers:
Why OpenLayers?
Pitfalls
Performance
JavaScript frameworks
Available maps
I haven't seen much of a presence from OpenLayers users on SO but they're out there. The OpenLayers mailing lists are pretty active (I'm on Users and Dev and see anywhere from 50-100 emails a day discussing various things. You can search the lists from those links too.).
I can't answer all your questions but one thing I'll put out there is that OpenLayers and google maps aren't mutually exclusive. OpenLayers is a javascript library and you can use it to interact with google maps. Check out this example: OpenLayers using google maps. And here's the main OpenLayers examples page.
It really depends on what you want to use the map for. To simply plot points on a map, Google Maps will be fine. The map layers for Google Maps are also quite detailed. OpenLayers on the other hand offers far more functionality and is very extensible.
OpenLayers have lots of examples to get you started.
As for maps, OpenLayers is only an API so you need to supply it will map layers. The Google Maps API will be limited to the map layers supplied by google. With OpenLayer you can display pretty much any publicly available map service (WMS, WFS, TMS, WMS-C). A very good example is openstreetmap.org - (global streets map collected by the community). OSM can be added to openlayers as a TMS layer. Check out this example for instructions.
One point that hasn't been fully made here is that using OpenLayers avoids various restrictions Google places on the terms of service for its map APIs, including:
You can't legally use a Google map solely in a section of your site that requires payment to access, or for a private site that the public can't sign up for (e.g. a corporate intranet). (IANAL, but see Terms of Service, 9.1 and the FAQ)
You can't legally (or practically) use the Google API for offline applications (i.e. where the tiles are served from your own machine). Even if there weren't legal restrictions, Google makes this technically very difficult, while OpenLayers makes it easy.
Google reserves the right to shut down access to the API if you're showing a map with content it finds objectionable. The example given in the FAQ is a map of illegal drugs, which gives a good sense of the gray areas this restriction might cover.
See this FAQ and the Terms of Service for more details.
All that said, as a long-time Google Maps developer who recently started using OpenLayers, I feel that Google Maps has better documentation, a larger user community, and a clearer and more stable API than OpenLayers. So you have to make a trade-off somewhere.
I agree with all answers, but there is one very important point that nobody mentions. OpenLayers and Google Maps have different targets.
OpenLayer is an excellent framework to display geodata, but Google Maps is a pool of services that include a framework to display geodata among other services.
So, Google Maps expose a lot services and features that OpenLayes do not have. Some examples of Google Maps features and services are region localization, sensor detection (for device with GPS) and user localization, geocoding and reverse geocoding, street view, etc.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With