Search code examples
google-mapsgoogle-maps-api-3google-maps-api-2

mixing google maps api v2 and v3 possible?


One question linked an interesting example of mixing API v2 and v3!. Look at the code:

function initialize() {
  if (GBrowserIsCompatible()) {

    // Create and Center a Map
    var map = new GMap2(document.getElementById("map_canvas"));
    map.setCenter(new GLatLng(37.4419, -122.1419), 13);
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());

    // bind a search control to the map, suppress result list
    map.addControl(new google.maps.LocalSearch(), new GControlPosition(G_ANCHOR_BOTTOM_RIGHT, new GSize(10,20)));
  }
}
GSearch.setOnLoadCallback(initialize);

The map is apparently in v2 but the code new google.maps.LocalSearch() is v3!

How is this possible?

Maybe it's not really API v3. I thought it could be deprecated Local Search API that worked within API v2, but it is not: in this API the object is google.search.localSearch while here it is google.maps.localsearch ... I'm totaly confused.


Solution

  • That example only uses v2, not v3 at all. The v2 API does optionally expose everything under google.maps (for example google.maps.GeoXml) – most people just use the 'G' naming though.

    There's also a difference between google.search.LocalSearch (which lets you query Google for local search results) and google.maps.LocalSearch (which is a v2 control). Since both APIs are deprecated, I'd avoid both!