* fix: support devices with cutouts for DataDrivenDatasetStylingActivity.java demo * fix: remove unnecessary 'res/' from paths in README.md file * feat(apidemos): enhance DataDrivenBoundariesActivity UI and boundary selection This commit enhances the DataDrivenBoundariesActivity demo with UI and functionality improvements focusing on boundary type selection and visual enhancements. - Implements Material Design theming and UI elements. - Adds boundary type selection via PopupMenu (Locality, Admin Area, Country). - Refactors styling and implements persistent country selection. - Handles system UI insets for improved display. These changes improve the demo's user experience and code structure, better showcasing data-driven boundary styling. * feat(apidemos): configure dataset-specific zoom levels for datasets demo This commit introduces dataset-specific zoom levels to the DataDrivenDatasetStylingActivity, enhancing the user experience when switching between datasets. - Adds a `zoomLevel` field to the `DataSet` class to store the desired zoom level for each dataset. - Updates the `dataSets` array to include appropriate zoom levels for Boulder, New York, and Kyoto datasets. - Modifies the `centerMapOnLocation` method to accept a `zoomLevel` parameter, allowing it to be dynamically set. - Updates the `switchDataSet` method to utilize the `zoomLevel` from the selected `DataSet` when centering the map, ensuring the map zooms to the optimal level for each dataset. - Removes the previously hardcoded `ZOOM_LEVEL` constant, as the zoom level is now dataset-dependent. These changes ensure that when a user selects a dataset, the map automatically zooms to a relevant level for that specific dataset, improving clarity and usability of the demo. Also adds missing copyright header.
Google Maps SDK for Android Samples
Samples demonstrating how to use Maps SDK for Android.
This repo contains the following samples:
- ApiDemos: A collection of small demos showing most features of the Maps SDK for Android.
- WearOS: Displays a map on a Wear OS device. This sample demonstrates the basic setup required for a gradle-based Android Studio project.
- Tutorials: Samples associated with tutorials in the developer's guide. See each sample for a link to the associated guide.
- Snippets: Snippets for code found in https://developers.google.com/maps/documentation/android-sdk
Pre-requisites
- See each sample for pre-requisites.
- All require up-to-date versions of the Android build tools and the Android support repository.
- The demo apps require that you add your own Google Maps API key. See Get an API key docs for more instructions.
Getting Started
- Download the samples by cloning this repository
- In the welcome screen of Android Studio, select "Open an Existing project"
- Select one of the sample directories from this repository
Alternatively, use the gradlew build command to build the project directly or download an APK
under releases.
Support
- Stack Overflow: https://stackoverflow.com/questions/tagged/android+google-maps
If you have discovered an issue with the Google Maps Platform SDK for Android v2, please see the resources here: https://developers.google.com/maps/support/
If you've found an error in these samples, please file an issue: https://github.com/googlemaps/android-samples/issues
Patches are encouraged, and may be submitted according to the instructions in CONTRIBUTING.md.
License
(See each sample directory for details.)
Copyright 2015 The Android Open Source Project
Copyright 2015 Google, Inc.
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.