mirror of
https://github.com/googlemaps/android-samples.git
synced 2025-12-08 18:02:20 +00:00
* 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.
52 lines
3.0 KiB
Markdown
52 lines
3.0 KiB
Markdown
This directory contains sample datasets for demonstrating data-driven styling in Google Maps.
|
|
Data-driven styling allows you to customize the appearance of map features (like points, lines, and
|
|
polygons) based on the data associated with those features.
|
|
|
|
* **`new_york_points.csv`:** This CSV file contains data about squirrel sightings in New York City.
|
|
Each row represents a sighting, with the location (latitude
|
|
and longitude), date, and other details about the squirrel (e.g., color, size). This data can be
|
|
used to create a map where each squirrel sighting is represented by a point, and the appearance of
|
|
the point (color, icon) can be customized based on the squirrel's attributes.
|
|
|
|
* **`boulder_polylines.geojson`:** This GeoJSON file contains data about trails in Boulder,
|
|
Colorado. Each feature in the file represents a trail, and the geometry is likely a polyline (a
|
|
series of connected points). The file also includes attributes like trail name, difficulty,
|
|
and length. This data can be used to create a map where trails are displayed as lines, and the
|
|
appearance of the lines (color, thickness, pattern) can be customized based on the trail's
|
|
attributes.
|
|
|
|
* **`kyoto_polygons.geojson`:** This GeoJSON file contains data about temples in Kyoto, Japan. Each
|
|
feature in the file represents a temple, and the geometry is a polygon (an enclosed area).
|
|
|
|
**Uploading Data to Google Cloud Console and Using it with Google Maps:**
|
|
|
|
To use this data with data-driven styling in Google Maps, you'll need to upload it to the Google
|
|
Cloud Console and create a dataset. Here's a general outline of the process:
|
|
|
|
## 1. Create a Map ID
|
|
To create a new map ID, follow the steps in [Create a map ID](https://developers.google.com/maps/documentation/get-map-id#create-a-map-id).
|
|
Make sure to set the **Map type** to **Android**.
|
|
|
|
## 2. Create a New Map Style
|
|
Follow the instructions in [Manage map styles](https://developers.google.com/maps/documentation/android-sdk/cloud-customization/map-styles) to create a new style and [associate it with the map ID you just created](https://developers.google.com/maps/documentation/android-sdk/cloud-customization/map-styles#associate-style-with-map-id).
|
|
|
|
## 3. Upload a Dataset
|
|
To include data-driven styling in your map:
|
|
|
|
1. Upload the dataset on the [Google Maps Platform Datasets](https://console.cloud.google.com/google/maps-apis/datasets) page.
|
|
2. Confirm that the dataset upload is successful (sometimes there can be issues due to an invalid structure).
|
|
|
|
## 4. Link the Dataset to the Map Style
|
|
To enable data-driven styling:
|
|
|
|
1. Open your dataset in the [Google Maps Platform Datasets](https://console.cloud.google.com/google/maps-apis/datasets) page.
|
|
2. Click on the **Preview** of the dataset.
|
|
3. Associate the dataset with one of the previously created styles
|
|
|
|
## 5. Set the Dataset ID in the secrets.properties file
|
|
```
|
|
BOULDER_DATASET_ID=<BOULDER_DATASET_ID>
|
|
NEW_YORK_DATASET_ID=<NEW_YORK_DATASET_ID>
|
|
KYOTO_DATASET_ID=<KYOTO_DATASET_ID>
|
|
```
|
|
** Important: ** the map ID set in the strings.xml file must match the maps ID associated with the style. |