На платформе Google Карт есть облачные функции для работы со стилями, позволяющие с легкостью управлять стилями карт с помощью Google Cloud Console и делать карты удобнее для пользователей. Чтобы упростить работу с этими функциями, мы добавили в Cloud Console ряд новых возможностей:
- Простой и удобный редактор стилей.
- Возможность создавать идентификаторы карт и управлять ими.
- Создание собственных стилей и управление ими.
- Инструменты для динамического обновления стилей.
Как добавить идентификатор карты в приложение
Идентификатор карты связан с определенным стилем карты или функцией. Чтобы настроить стиль карты и связать его с идентификатором, воспользуйтесь Google Cloud Console. Когда вы ссылаетесь на идентификатор карты в своем коде, в вашем приложении используется соответствующий стиль. Обновления стилей в дальнейшем будут применяться автоматически. От ваших клиентов не потребуется никаких действий.
Вы можете добавить идентификатор карты в элемент <fragment>
файла макета для объекта activity. Это можно сделать с помощью класса MapView
или программным способом, с помощью класса GoogleMapOptions
.
Допустим, вы создали идентификатор карты, который хранится в строковом значении map_id
в файле res/values/strings.xml
:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="map_id">YOUR_MAP_ID</string>
</resources>
Если карта добавлена с помощью элемента <fragment>
в файле фрагмента для объекта activity, то во всех фрагментах карты с этим стилем должен быть указан идентификатор карты в атрибуте map:mapId
:
<fragment xmlns:map="http://schemas.android.com/apk/res-auto"
class="com.google.android.gms.maps.SupportMapFragment"
…
map:mapId="@string/map_id" />
Указать идентификатор карты можно также с помощью атрибута map:mapId
класса MapView
:
<com.google.android.gms.maps.MapView
xmlns:android="http://schemas.android.com/apk/res/android"
....
map:mapId="@string/map_id" />
Чтобы указать идентификатор карты программным способом, передайте его в экземпляр SupportMapFragment
с помощью класса GoogleMapOptions
:
Java
GoogleMapOptions options = new GoogleMapOptions() .mapId("YOUR_MAP_ID"); SupportMapFragment mapFragment = SupportMapFragment.newInstance(options);
Kotlin
val options = GoogleMapOptions() .mapId("YOUR_MAP_ID") val mapFragment = SupportMapFragment.newInstance(options)
Можно также передать его в экземпляр MapView
:
Java
GoogleMapOptions options = new GoogleMapOptions() .mapId("YOUR_MAP_ID"); MapView mapView = new MapView(context, options);
Kotlin
val options = GoogleMapOptions() .mapId("YOUR_MAP_ID") val mapView = MapView(context, options)
Создайте и запустите приложение в Android Studio, как обычно. Собственные стили будут применены ко всем картам с идентификаторами.
Как пользоваться редактором стилей
Редактор стилей в Картах – это инструмент, доступный в интерфейсе Google Cloud Console.
Подробнее о работе с Редактором стилей…