You are on page 1of 6



Seminar Google Maps API

Synopsis Submitted by



1MV09IS057 1MV09IS023

This seminar describes Google Maps API. An application programming interface (API) is a protocol intended to be used as an interface by software components to communicate with each other. An API is a library that may include specification for routines, data structures, object classes, and variables. Google Maps (formerly Google Local) is a web mapping service application and technology provided by Google, that powers many map-based services, including the Google Maps website, Google Ride Finder, Google Transit, and maps embedded on third-party websites via the Google Maps API. It offers street maps, a route planner for traveling by foot, car, bike (beta), or with public transportation and a locator for urban businesses in numerous countries around the world. Google Maps satellite images are not updated in real time, but rather they are several months or years old.

A number of new geospatial viewing tools from major players in the Internet industry have recently appeared on the scene and are taking the geospatial world by storm. Google, Yahoo, Microsoft, and Amazon have all released web-based mapping tools in the recent past, and collectively these new players to the industry have raised the bar for Internet mapping. Although their functional capabilities don’t provide anything we haven’t seen in web offerings from traditional GIS vendors, their emergence has been significant in that they have managed to capture a wider audience. Google, in particular, has emerged as the leader of this pack with its recently released Google Maps product which provides a slick, highly responsive visual interface built using AJAX technologies along with detailed street and aerial imagery data, and an open API allowing customization of the map output including the ability to add application specific data to the map. Many of the barriers to entry into the world of web mapping have been removed by Google Maps. To understand how this technology has the potential to change the way web mapping is implemented you must understand the traditional approach to publishing dynamic maps in a web based environment. Traditional web mapping products have relied on a sophisticated infrastructure of data, hardware, software, and human resources. Data for a traditional web mapping application can be broken into two distinct categories: base data and application specific data. Base data or background data usually includes the geographic region covered by the application and often includes layers such as aerial imagery and photos, streets, and organizational boundaries. Application specific data would include geographic data layers specific to the application being developed. For instance, in a web mapping application hosted by a city you might have data layers such as parcel and subdivision boundaries, school locations, public office locations, and many other application specific layers. Each of these data layers must be obtained loaded onto a server managed by the organization, and updated periodically. With Google Maps you no longer have to worry

about obtaining and managing your own base data. Aerial imagery and street data is included with Google Maps thus removing the need to obtain and manage these large data sets. However, you are still required to manage your application specific data in either XML or database format. In addition to the complex data requirements of traditional web mapping products you must also contend with hardware, software, and human resource issues. Hardware and software must be purchased and effectively managed while human resources are necessary for managing the software installations, administering the software, and programming the web applications. Although these requirements are not completely removed through the introduction of Google Maps, they are greatly reduced. Hardware is still needed to host the application specific data and web sites, but the software requirements are essentially removed from the equation. Google Maps is currently a free product and requires no installation or management. However, because this product is a programmer’s toolkit or API you will either need to have some programming expertise or know someone who does. Specifically you will need skills in JavaScript and android, possibly another Internet programming language such as PHP, ASP.NET, or ColdFusion. .


As mentioned in the introduction, Google Maps provides a highly responsive, intuitive mapping interface with detailed street and aerial imagery data embedded. In addition, map controls can be embedded in the product to give users full control over map navigation and the display of street and imagery data. Additionally, users can also perform map panning through the user of the “arrow” keys on a keyboard as well as dragging the map via the mouse. These capabilities combine to provide a compelling product, but the primary driver behind its rapid acceptance as an Internet mapping viewer is the ability to customize the map to fit application specific needs. For instance, a real estate agency might develop a web based application that allows end user searching for residential properties the results of which could be displayed on a Google Maps application. This ability to customize the map display through the addition of application specific data is the true driver of its acceptance as a geospatial viewing tool.

Getting a Google Maps Key At this time, the Google Maps API is a free beta service. However, Google reserves the right to put advertising on the map at any point in the future so keep this in mind as you begin to

develop Google Maps applications. Your applications may also need frequent code changes since this product is still in a beta format and subject to changes in the API. Before you can get started developing Google Maps applications you will need to sign up for an API key. When you sign up for an API key you must specify a web site URL that will be used in your development. One problem frequently associated with Google Maps is that you must acquire a unique key for each directory that will serve Google Maps. For instance, if you intend to serve Google Maps from http://localhost/wwwroot and http://localhost/wwwroot/GMaps you would need to generate separate keys for each directory. Google Maps will generate a unique key code for the directory that you specify. You must use this key code in each script that accesses the Google Maps API. Google Maps Documentation Google also provides documentation for using its product including full documentation of the classes, methods, and events available for the Google Maps objects as well as code examples to get you started. In addition, Google provides a blog and discussion group for additional information on using the API.

Creating a Basic Google Map with Controls
When you sign up with Google Maps, an API key will be generated. Make sure you save this key as you will need it for all Google Maps applications that you develop for the particular URL directory that was specified. In addition to the API key, Google will also generate an example web page centered on the Palo Alto area in the vicinity of the Google Headquarters You can start a new android project in eclipse and start the activity. Create a new Android project called maps within Activity called ShowMapActivity. Change the AndroidManifest.xml file to the following code. Add the following permissions to your application

Get a valid API key for your application and enter this key in the mainactivity.xml located at res->layout

Now Debug and run the application using android emulator and we will see something like this shown below a basic map:-

Even the Zoom controls and the latitude longitude and street view satellite views can easily be implemented which will be shown in ppt.

Successfully implemented Google Maps API. Also conducted various forms of its applications. Also showed how it can easily be implemented. The implementation hence gives an idea of how the Maps works and how it can be customized by the individual.

REFERENCE: Learning android development.