Map controls for sites running https - google-maps

A team I work with is currently in an unfortunate situation. They've spent a lot of time integrating the google map control on their site but they didn't discover that to run google maps on a https site you must license the control (and it isn't cheap) and the same goes for bing maps.
So my question is do you know of any cheaper/free map controls like google or bing maps?

OpenLayers

In version 3 of the API, HTTPS support is now free.

Why can't they put the google maps part on a non-secure page or frame? The google licence says that you must have it on a publicly accessible site to benefit from the free version of the licence, so even on a http site, you may still need to pay for the data.
All other mapping tools are dependant on the expensive map source data, so you'll not find any. The exception is OpenStreetMap which uses community-supplied map data.

MapQuest's API allows SSL usage through the free license.

I was looking into this and found this post - you can use Bing maps over ssl with no problems, and it seems to work fine.

For the danish users I found the following VisKort component on SoftwareBørsen. It looks like it is based on OpenStreetMap, but I'm not sure.

Related

Does Google Map API V3 provide solution to tracking moving assets without using mobile app?

there,
Does Google Map API V3 include solution that allows to track moving assets without us having to develop additional mobile apps (apps to be installed on each asset to be tracked)?
My company is a Google Maps APIs Premium plan business user and we have several .Net C# web pages already using Google Map API. And we are looking for the possibility to add a moving-assets-tracking feature on our website now, but we prefer not to get into mobile app developments for this.
If that possible? I googled, but not seeing much info on this. Could you please provide some detailed examples?
Thanks!
Asset tracking is possible with Google Maps Platform, but I don't think this is possible without installing an application to the asset being tracked as there
could be no means to track it.
By V3, if you are referring to JavaScript API then it is not possible.
You may read about asset tracking in this documentation:
https://cloud.google.com/maps-platform/asset-tracking/
Contacting sales team for Google Maps might be able to provide you something. But this is still unsure. The contact sales form can be found in the link above.

Is it possible to get live traffic layer data from android google api?

I am trying to get the live traffic data for a point(provided lat & long), is there any Google Maps API service which can provide me the Google Maps traffic layer data for a specified point?
Hello #R AaHul Dutta,
Thanks for inquiring about this feature and for helping to keep this conversation alive. At the moment, the google.maps.TrafficLayer class does not support Typical data since the class is defaulted to autoRefresh: true.
You could help the community by showing support in the Google Public Issue Tracker's existing feature request. Feel free to show us your support for new features and don't forget to follow our blog for feature roll-outs, and bug fixes as new versions of the Google Maps JS API roll-out.

Offline Google Maps in an Android app

Recently Google released a new version of their Google Maps which lets you save an offline version of a particular chunk of the map. At the same time I've been playing around with making an Android app which uses the Google Maps API, and I was just wondering... is it possible in some way to get that offline map and get my application to use it? So that my application doesn't need an internet connection either?
I'm aware that OpenStreetMap is an alternative but I don't think it'll work with the project I have in mind.
Cheers
that may be a violation of Google's Terms of Service.
Have a look at this: How to cache Google map tiles for offline usage?

Using Google Maps V3 offline, e.g. with cache-manifest?

I'm writing an HTML5 mobile application that uses Google Maps V3 with a custom layer of OpenStreetMap tiles.
The OSM tiles (from tile.openstreetmap.org) are set to cache for just over 24 hours, and I'm using a cache-manifest for all my HTML/JS/CSS.
So the application could in theory be used offline, except the Google Maps interface isn't happy when offline.
It always wants to call to the Google Maps server at http://maps.google.com/maps/api/js?sensor=false&region=GB - when this fails, Google Maps fails to load.
Is there any way to use Google Maps V3 API offline?
Could I cache-manifest http://maps.google.com/maps/api/js?sensor=false&region=GB, or would that be a bad move?
(Sorry for this rather beginner question, let me know if I can explain better!)
Google coders themselves have tackled this problem and unfortunately the information isn't well disseminated. But yes you can use cache-manifest to do exactly what you've described.
Required Readings
First take a look at the Google Code blogpost here: http://googlecode.blogspot.com/2010/04/google-apis-html5-new-era-of-mobile.html
Then have a read at Missouri State's own post: http://blogs.missouristate.edu/web/2010/05/12/google-maps-api-v3-developing-for-mobile-devices/
The Technique
You must cache every URL used by Google Maps
Employ methods to battle Chrome's and Firefox's stubborn caching methods by removing it from "offline websites"
All customizations must be client-side in javascript
Your cache file will look like (as per Missouri State):
CACHE MANIFEST
/map/mobile/examples/template.aspx
/map/mobile/examples/template.css
/map/mobile/examples/template.js
NETWORK:
http://maps.gstatic.com/
http://maps.google.com/
http://maps.googleapis.com/
http://mt0.googleapis.com/
http://mt1.googleapis.com/
http://mt2.googleapis.com/
http://mt3.googleapis.com/
http://khm0.googleapis.com/
http://khm1.googleapis.com/
http://cbk0.googleapis.com/
http://cbk1.googleapis.com/
http://www.google-analytics.com/
http://gg.google.com/
Caveats
You will need to be entirely HTML5-based and recognize the impacts this will have on your users. This situation is handy where either your users are up-to-date on browser standards/devices or you have control over user choices.
Hope this helps.
I have http://maps.google.com/maps/api/js?sensor=false in the CACHE section of cache.manifest, together with my application files and there isn't any problem.
Although, I believe you also have to cache other files that the Google Maps API requests. You can take a look at the files downloaded by your app and include them.
Not possible!
Google map CDN URLs have dynamic nature,
https://mts0.googleapis.com/vt?pb=!1m4!1m3!1i8!2i234!3i15...
https://mts1.googleapis.com/vt?pb=!1m4!1m3!1i8!2i233!3i155!!...
No wildcard characters are allowed in CACHE section of the HTML5 cache manifest files
We can not have some thing like,
CACHE MANIFEST
/css/style.css
/js/libs/modernizr-2.0.6.min.js
/js/libs/jquery-2.1.4.js
http://mts0.googleapis.com/*
http://mts1.googleapis.com/*
http://fonts.googleapis.com/*
NETWORK:
*
I had a google map project that I needed offline. I found Bing Maps (https://www.bingmapsportal.com/ISDK/AjaxV7) is much better offline and switched my project over to that and I'm happy. I ran the google and bing version side-by-side in offline mode and Bing was great. Whereas google would immediatey fail on tile loads, Bing maps cached more tiles and appeared to even resize zoomed tiles to at least give you something in offline mode.
I know the question here is about Google maps; but if you don't care about bing vs. google and really just need offline support, I'd highly recommend trying Bing maps. It solved it for me.

Google maps over https

We are using Google Maps over https using a free maps API key. The Google Maps API FAQ says:
The Google Maps JavaScript API and Google Static Maps API can be
accessed over a secure (https) connection by Google Maps API Premier
customers. If the Google Maps APIs are used with a free Maps API key
on a secure site, the browser may warn the user about non-secure
objects on the screen.
My understanding of the above is that the API will work anyway, but users might get a security warning. For us, however, the map will not display at all, rendering the page completely unusable.
Does anybody know if Google is blocking use of the maps API over https with free maps API keys?
As of March 15th, 2011, anyone may use the API at https://maps-api-ssl.google.com/
http://googlegeodevelopers.blogspot.com/2011/03/maps-apis-over-ssl-now-available-to-all.html
From a quick look at the google maps premier site it seems like they probably are blocking it. One of the listed features is the "ability to provide secure maps over https"
http://code.google.com/apis/maps/documentation/premier/
Okay, here is some more specific info:
http://code.google.com/apis/maps/faq.html#ssl
It seems like you are probably getting a blank map because you are attempting to access with https a service that is only available to premiere members
You should probably use a protocol relative URL.
<script type="text/javascript" src="//maps.google.com/maps/api/js?sensor=false"></script>
After installing SSL certificate, I just had to do a simple change for everything to work.
From this:
<script src="http://maps.google.com/maps/api/js?sensor=true" type="text/javascript"></script>
To this:
<script src="//maps.google.com/maps/api/js?sensor=true" type="text/javascript"></script>
You might be able to work around the problem by using OpenStreetMap instead. It doesn't present a super easy solution, because OpenStreetMap's main tile server does not support HTTPS connections, however there are various things you're allowed to do with OpenStreetMap which google would never allow.
Some more discussion of this on the OpenStreetMap forum: http://forum.openstreetmap.org/viewtopic.php?id=5546
no, google will let you display the map even if you are using free google API's over https login.
It definitely gives you a pop up box asking for a yes/no but your map will be displayed for sure.