# Unit 7 Lab - Using Google Maps API ### Challenge This week we will be learning how to add Google Maps to your application. You'll be able to render a Google Map view, add icons to the app, and add alert dialogs and windows to a Google Maps view. If you are using the default x86-based emulator instead, make sure your virtual device comes with Google APIs and Google Play support as mentioned in [this guide](http://guides.codepath.org/android/Google-Maps-Fragment-Guide#setup-x86-based-emulator). The most complicated part of this assignment will be setting up Google Maps on your phone. <img src="http://i.imgur.com/1rh8jLa.jpg" height="500"/> #### Steps 1. Obtain a Google Maps API key * Follow [register for an API key](http://guides.codepath.org/android/Google-Maps-Fragment-Guide#get-api-key) guide. 2. Import Maps Demo * Make sure your emulator or is setup properly before attempting this step. * Refer [import maps demo](http://guides.codepath.org/android/Google-Maps-Fragment-Guide#import-maps-demo) guide and follow the steps to verify that google maps is showing up on your device or emulator. * To change locations, you will need to make sure to [send the coordinates](http://guides.codepath.org/android/Google-Maps-Fragment-Guide#official-emulator). * **Troubleshooting:** If you encounter compilation errors, select `File --> Invalidate Caches/Restart` from Android Studio 3. Test your app * Test to verify that maps is loading correctly on your screen. * Follow the [troubleshooting guide](http://guides.codepath.org/android/Google-Maps-Fragment-Guide#troubleshooting) if maps fails to load on your device. 4. Show AlertDialog and Add Marker * After you have successfully loaded the map, bring up an AlertDialog for the user to type in a message on LongClick event. On completion, have a marker added that when clicked displays the message in an info window. * Refer [show AlertDialog on long click](http://guides.codepath.org/android/Google-Maps-API-v2-Usage#show-alertdialog-on-longclick) guide. 5. Swap the marker pin for a [speech bubble](http://guides.codepath.org/android/Google-Maps-API-v2-Usage#speech-bubbles). 6. Set your map and markers to be draggable. * Refer [enable markers to be draggable guide](http://guides.codepath.org/android/Google-Maps-API-v2-Usage#enable-markers-to-be-draggable). 7. Run and test your app.