Sorry, this page is no longer available
Sorry, this page is no longer available
Sorry, this page is no longer available
Sorry, this page is no longer available
Sorry, this page is no longer available
Sorry, this page is no longer available
Sorry, this page is no longer available
Sorry, this page is no longer available
Sorry, this page is no longer available
Sorry, this page is no longer available
Sorry, this page is no longer available
Sorry, this page is no longer available
We may earn an affiliate commission when you visit our partners.
Course image
Stefan Jovanovic

Hello there and welcome to my course, In this course I'm going to teach you how to implement Google Maps SDK for Android using the power of Kotlin programming language.

We are going to start this course by introducing with Google Maps SDK, you will first learn how to connect your Android Studio project with Google Cloud Platform. After that we will go through the process of generating Debug and Release API Keys in order to enable Google Maps SDK in our project.

Read more

Hello there and welcome to my course, In this course I'm going to teach you how to implement Google Maps SDK for Android using the power of Kotlin programming language.

We are going to start this course by introducing with Google Maps SDK, you will first learn how to connect your Android Studio project with Google Cloud Platform. After that we will go through the process of generating Debug and Release API Keys in order to enable Google Maps SDK in our project.

Then I'm going to show you how to enable/disable certain Map controls like compass, zoom in/out controls, my location button and more. Also how to enable/disable map gestures like scrolling zooming, tilting, rotating and so on.

After that we will go through to process of choosing and applying different Map Types and Styles. You will learn how to apply dark and light map styles to your app.

You will learn how to animate Maps camera movement, how to Animate zoom levels, how to handle single click and long click events, how to place markers and drag them on the map. Then how to customize markers, and info windows as well.

Also you'll learn how to add different shapes to your Google Map like Polyline, Polygons, Circles, Overlays and basically everything you'll even need.

So Only after we get fully introduced with most of Google Maps features, we are going to start and build a real Android application. Our app will be called Distance Tracker, and as the name suggests, we will create an app which will be able to track our users location and track the distance which user travels. Our application will use Foreground Service and it will track users location even from a background when we kill our app. Bottom line, you will be able to  track how many kilometers have you traveled and how much time it took.

In this course you will not learn just how to use Google Maps SDK, but also how to handle Run-time permissions, and the best practice of requesting those permissions sequentially as the newest Android API requires.

Also our application will use Foreground service with a non-removable Notification which will always stay on the top. Unless we stop and kill our foreground service. Now this is not the course where you will just learn the theory, this is the course where you are going to combine theory with practice and create a real android application to put all your knowledge which you gathered throughout this course together.

So bottom line, the level of knowledge you will get from this course, depends on how much effort you put into watching and practicing with this course.

So what are you waiting for, let's get started Developers.

Enroll now

What's inside

Learning objectives

  • Google maps api
  • Google maps sdk for android
  • Connect the project with google cloud platform
  • Generate maps sdk api keys
  • Add custom map style
  • Change map type
  • Add map padding
  • Work with controls and gestures
  • Change map camera position
  • Animate camera movement
  • Zoom in/out on the map
  • Rotate the map
  • Tilt the map
  • Show buildings in 3d
  • Setting boundaries on the map
  • Restrict camera viewport
  • Handle map events
  • Draw markers
  • Draw polylines
  • Draw polygons
  • Draw circles
  • Shape customization
  • Ground overlay
  • Maps sdk utility library
  • Geojson
  • Draw heatmaps
  • Add marker clusters
  • Calculate the distance on the map
  • Service
  • Foreground service
  • Location permissions
  • Background permissions
  • Run-time permissions
  • Easy permissions library
  • My location layer on google maps
  • Locate your device with one click
  • Get users last known location
  • Create notification
  • Push notification updates
  • Navigation component
  • Data binding
  • Dependency injection
  • Dagger-hilt
  • Create distance tracker application
  • Show more
  • Show less

Syllabus

Change Map Type
Change Map Style
Camera and Viewport
About Camera Position
Read more

Source Code - Distance Tracker App (Github): https://github.com/stevdza-san/DistanceTracker

Yes, from the Android Studio Flamingo version they do not host that template anymore. I suggest you do it manually instead. Check this answer here: https://stackoverflow.com/a/76246514/14836193

Things have changed since I've made this course. Which is why you should check this documentation to find out how to properly configure your MAPS API KEY: https://developers.google.com/maps/documentation/android-sdk/start

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Uses Kotlin, which is now the preferred language for Android development, making it easier to integrate with modern Android projects
Covers foreground services, location permissions, and background permissions, which are essential for location-based Android applications
Includes dependency injection with Dagger-Hilt, which promotes maintainable and testable code in Android projects
Teaches the Navigation Component, which is the recommended way to navigate between fragments in Android apps
Employs data binding, which reduces boilerplate code and simplifies UI development in Android applications
Features updates addressing dependency updates and deprecated code cleanup, which is helpful for maintaining compatibility

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Practical google maps development with kotlin

According to students, this course provides a practical and hands-on approach to using the Google Maps SDK for Android with Kotlin. Learners frequently praise the focus on building a real application, the Distance Tracker, which effectively reinforces the concepts taught. The course is generally considered clear and easy to follow, with strong explanations, especially for complex areas like runtime permissions and foreground services. Many recent reviews highlight that the course is well-maintained and actively updated, ensuring it aligns with the latest Android development practices, which is a significant positive aspect. While some beginners noted that some prior Android development and Kotlin knowledge is beneficial, the course is widely regarded as effective for developers looking to integrate Google Maps into their projects.
Includes modern Android development tools.
"It was a bonus that the course also touched upon modern Android libraries like Navigation Component and Data Binding."
"I appreciated the inclusion of Hilt dependency injection and how it integrates with the project structure."
"Getting exposed to these other libraries alongside the Maps SDK was a great value addition for me."
"The course integrates the Maps SDK within the context of a modern Android application architecture."
Instructor explains complex topics effectively.
"The explanations for complex topics like services and background location permissions were incredibly clear and easy to grasp."
"I found the instructor's explanations to be very direct and simple, making even difficult subjects understandable."
"He broke down the steps for integrating permissions and services logically."
"The way the course explained how to handle runtime permissions was particularly helpful."
Course material is kept current with updates.
"I was really impressed that the instructor keeps this course updated with the latest Android API changes, especially regarding permissions."
"Updates address deprecated methods and libraries, which is essential for Android development and adds significant value."
"Older reviews mentioned outdated parts, but I found the course code and dependencies were current thanks to recent updates."
"It's great to see the course evolve with the Android platform, ensuring the information is still relevant."
Course centers around building a real-world app.
"Building the Distance Tracker application really helped me solidify my understanding of the concepts by applying them."
"I learned by doing thanks to the focus on the practical project throughout the course."
"It wasn't just theory; actually creating a functional app made the learning very effective."
"The project-based approach is excellent for learning how to use the SDK in practice."
Assumes some existing Android/Kotlin experience.
"As someone relatively new to Android development, I found the initial setup steps a bit challenging and required external help."
"I think the course is best suited for developers who already have a basic understanding of Android Studio and Kotlin."
"While the Maps part is clear, navigating the rest of the Android setup felt like it required prior experience."
"Some parts move quickly if you aren't already familiar with certain Android concepts outside of Maps."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Google Maps SDK for Android with Kotlin | Masterclass with these activities:
Review Kotlin Fundamentals
Solidify your understanding of Kotlin syntax and core concepts before diving into the Google Maps SDK. This will make it easier to understand the code examples and implement your own features.
Show steps
  • Review Kotlin documentation on variables, data types, and control flow.
  • Practice writing simple Kotlin programs to reinforce your understanding.
  • Complete online Kotlin tutorials or coding challenges.
Practice Android UI Development
Familiarize yourself with Android UI development principles, including layouts, views, and data binding. This will help you design and implement the user interface for your map-based applications.
Show steps
  • Create simple Android layouts using XML.
  • Implement data binding to connect UI elements to data sources.
  • Explore different UI components like buttons, text views, and image views.
Read 'Google Maps API Cookbook'
Reference a cookbook to gain practical knowledge of the Google Maps API. This will help you implement advanced features and troubleshoot common issues.
Show steps
  • Browse the table of contents to identify relevant recipes.
  • Read the recipes that cover topics you're interested in or struggling with.
  • Implement the code examples in your own projects.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Implement Map Features
Practice implementing various map features, such as adding markers, drawing polylines, and customizing info windows. This will reinforce your understanding of the Google Maps SDK and improve your coding skills.
Show steps
  • Add markers to the map at specific locations.
  • Draw polylines to connect multiple locations.
  • Customize the appearance of markers and info windows.
  • Handle marker click events to display additional information.
Build a Location-Based App
Start a project to build a location-based app that utilizes the Google Maps SDK. This will allow you to apply your knowledge and skills to a real-world scenario.
Show steps
  • Define the scope and features of your app.
  • Design the user interface and data model.
  • Implement the map functionality, including location tracking and data visualization.
  • Test and debug your app thoroughly.
Write a Blog Post
Write a blog post about a specific aspect of the Google Maps SDK for Android. This will help you solidify your understanding and share your knowledge with others.
Show steps
  • Choose a topic related to the Google Maps SDK.
  • Research the topic thoroughly and gather relevant information.
  • Write a clear and concise blog post that explains the topic in detail.
  • Include code examples and screenshots to illustrate your points.
  • Proofread and edit your blog post before publishing it.
Contribute to a Maps Library
Contribute to an open-source library related to Google Maps or location services. This will give you experience working with a larger codebase and collaborating with other developers.
Show steps
  • Find an open-source library that interests you.
  • Review the library's documentation and code.
  • Identify a bug or feature that you can contribute to.
  • Submit a pull request with your changes.

Career center

Learners who complete Google Maps SDK for Android with Kotlin | Masterclass will develop knowledge and skills that may be useful to these careers:
Android Developer
An Android Developer builds applications for the Android platform, often working with geolocation features. This course is directly relevant to an Android Developer, with its focus on implementing the Google Maps SDK using Kotlin. The course teaches how to connect an Android project to Google Cloud Platform and secure API keys, as well as how to customize map controls and gestures. An Android Developer would benefit from practical instruction on adding markers, polylines, and other shapes, as well as implementing foreground services for location tracking, such as that implemented in this course's capstone project. This course helps build a foundation for location based Android applications. Therefore someone who wants to work in this role should strongly consider taking this course.
Mapping Software Developer
A Mapping Software Developer focuses on creating applications that display and interact with map data. This course provides direct experience with Google Maps SDK, which is a major tool for such development. The course details aspects of map customization, drawing shapes, and handling various map events which are important to a Mapping Software Developer. The course also teaches location tracking, which is crucial for many maps applications. A Mapping Software Developer would undoubtedly benefit from this course.
Mobile Application Developer
A Mobile Application Developer creates apps for mobile devices, which may include map-based features. This course provides practical experience with Google Maps SDK for Android, which is a significant component for many mobile applications. The instruction on how to handle map controls, gestures, and custom map styles is essential for a mobile application developer building location-aware applications. The course's hands-on project, in which learners create a distance tracker app, will provide a strong demonstration of skills that are highly relevant for this type of role. A mobile application developer who wishes to work with maps should take this course.
Mobile Mapping Specialist
A Mobile Mapping Specialist works with the integration of mapping technologies into mobile applications. The course emphasizes the practical use of Google Maps SDK in an Android context, including API key generation, map customization, and utilizing features such as markers, shapes, and the user's location. A Mobile Mapping Specialist would gain from the hands-on approach in this course. A Mobile Mapping Specialist should consider this course for deep dives into practical use cases.
Location Services Engineer
A Location Services Engineer is responsible for developing and maintaining location-based features and services. The course provides a detailed look into how to use the Google Maps SDK for Android, including integrating location permissions and implementing foreground services to track user locations. A Location Services Engineer benefits from a deep understanding of map interactions, drawing shapes, and customizing map components, and this course provides all of that. A Location Services Engineer should consider this course to gain proficiency with the platform.
GIS Application Developer
A Geographic Information Systems (GIS) Application Developer builds software that uses location data to provide insights and mapping functionalities. While this course focuses on the Google Maps SDK rather than desktop GIS systems, the course provides strong fundamentals in spatial data representation, map interaction, and feature implementation, which are skills directly transferable to a GIS Application Developer role. The course offers deep dives into map controls, gestures, custom styles, markers, and other shapes. The practical experience of the course is useful for anyone interested in this role.
Software Engineer
A Software Engineer designs, develops, and tests software, often working with APIs such as the Google Maps SDK. The practical coding experience offered in this course, particularly with Kotlin, helps build a foundation for a Software Engineer. The course’s coverage of map controls, gestures, shapes, and location services helps a software engineer gain useful skills. This course may be useful for an aspiring Software Engineer, particularly those interested in location-based software.
Application Architect
An Application Architect designs the structure of software applications and selects the technologies and components needed. This course is useful for an Application Architect who wishes to gain insight into the Google Maps SDK and its capabilities. The course teaches implementation details, such as connecting to the Google Cloud Platform, creating API keys, and implementing location tracking, and these are important to an architect. While an Application Architect does not typically code, the understanding of the features gained in this course would be of great use. This course may be useful to an aspiring Application Architect.
Geospatial Data Analyst
A Geospatial Data Analyst examines and interprets location-based data to produce useful insights. While this course focuses on the development aspects of maps, the experience with the Google Maps SDK builds a foundation in understanding the structure and capabilities of map systems. A Geospatial Data Analyst would find it helpful to understand the use of markers, shapes, and map customizations. This course may be useful to a Geospatial Data Analyst.
Front-End Developer
A Front End Developer focuses on the user interface and experience for web and mobile applications. While usually focused on web technologies, the course does provide experience in application flow and UI elements, particularly as they are used in maps contexts: map controls, gestures, and custom styles. The course's focus on the Android platform, as well as the Kotlin programming language, may be a hurdle for those primarily interested in web front ends, but the course may be useful for a Front End Developer interested in mobile interfaces.
Systems Analyst
A Systems Analyst examines software systems, analyzes requirements, and designs solutions to meet those requirements. While this course focuses on the development side of maps, it is useful for a Systems Analyst to understand the capabilities and limitations of various mapping technologies, such as those provided by the Google Maps SDK. The course provides knowledge of different map elements, and the challenges of their implementation, which can be valuable to a Systems Analyst. This course may be useful to an aspiring Systems Analyst.
UI/UX Developer
A UI/UX Developer is responsible for designing and implementing user interfaces that are aesthetically pleasing and easy to use. This course focuses on the practical application of the Google Maps SDK, but it can be useful for a UI/UX Developer to understand how certain elements of the map interface work, such as map controls, gestures, and custom styles. The practical application of map features as they are covered in this course may be useful to an aspiring UI/UX Developer.
Technical Consultant
A Technical Consultant leverages their technical expertise to help clients make informed technology-related decisions. This course on the Google Maps SDK can be useful for a Technical Consultant working with clients who want map-based solutions. The course provides a foundation of knowledge around the Google Maps SDK and associated technologies. This course may be useful to a Technical Consultant.
Project Manager
A Project Manager is responsible for planning, executing, and closing projects, often related to software implementations. While this course focuses on development, it may be useful for a Project Manager to understand the technical aspects when managing a project involving maps, such as project scope, timelines, and resources required for implementation. This course may be helpful to a Project Manager working on a map-based project.
Data Scientist
A Data Scientist analyzes information and draws conclusions. This course focuses primarily on the implementation of mapping in software. While the course is not directly related to a Data Scientist role, the practical understanding of location data, gained from the capstone project, may be useful to a Data Scientist working with location-based data. This course may be helpful to a Data Scientist.

Reading list

We've selected one books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Google Maps SDK for Android with Kotlin | Masterclass.
Provides practical recipes and solutions for common Google Maps API tasks. It covers a wide range of topics, including map customization, data visualization, and location-based services. It serves as a valuable reference for implementing advanced features in your Android mapping applications. This book can help you add more depth to your understanding of the Google Maps API.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser