Вы можете использовать API-интерфейс Google Mirror, чтобы отслеживать местоположение пользователя в элементах временной шкалы, напрямую запрашивать его последнее известное местоположение и подписываться на периодические обновления местоположения. Вы также можете доставлять предварительно отрендеренные изображения карты в карты временной шкалы, предоставляя API-интерфейсу Mirror координаты для рисования.
Получение последнего известного местоположения
Чтобы получить последнее известное местоположение текущего пользователя, отправьте запрос GET
на конечную точку REST:
Необработанный HTTP
GET /mirror/v1/locations/ HTTP/1.1
Authorization: Bearer {auth token}
Подписка на обновления местоположения
Подобно подписке на обновления временной шкалы , вы можете подписаться на обновления местоположения, подписавшись на коллекцию locations
.
Необработанный HTTP
POST /mirror/v1/subscriptions HTTP/1.1
Authorization: Bearer {auth token}
Content-Type: application/json
Content-Length: {length}
{
"collection": "locations",
"userToken": "harold_penguin",
"verifyToken": "random_hash_to_verify_referer",
"callbackUrl": "https://example.com/notify/callback"
}
Отображение карт на картах временной шкалы
Google Mirror API может отображать карты для вас и накладывать маркеры и линии, чтобы обозначить важные места и пути. Используйте glass://map
URI для запроса карты. Вот пример:
<img src="glass://map?w=width&h=height&marker=0;latitude,longitude&marker=1;latitude,longitude&polyline=;latitude,longitude,latitude,longitude"
width="width"
height="height"/>
Вот описание необходимых параметров:
-
w
- ширина в пикселях возвращаемого изображения карты -
h
- высота в пикселях возвращаемого изображения карты
Дополнительно требуется только один из пунктов в следующем списке, но вы можете указать их все:
-
center
andzoom
— центр (широта, долгота) карты для рендеринга и уровень масштабирования. Дополнительную информацию см. в разделе Уровни масштабирования . -
marker
- Укажите маркеры булавки для рисования в указанных координатах. Параметр marker принимает тип маркера (0
указывает наpin
, а1
— текущее местоположение), координату широты и координату долготы. Карта автоматически центрируется и масштабируется вокруг созданных вами маркеров, если вы явно не указалиcenter
иzoom
. -
polyline
— укажите координаты полилинии для представления пути на карте. Каждая полилиния состоит из ширины и цвета, за которыми следуют вершины полилинии. Например:polyline=8,ffff0000;47.6,-122.34,47.62,-122.40
задает красную линию шириной 8 пикселей между (47.6,-122.34
) и (47.62,-122.40
). Карта автоматически центрируется и масштабируется, чтобы соответствовать полилинии, если вы явно не указалиcenter
иzoom
.
В следующем примере показано, как лучше всего отображать изображение карты с текстом и как оно выглядит:
<article>
<figure>
<img src="glass://map?w=240&h=360&marker=0;42.369590,
-71.107132&marker=1;42.36254,-71.08726&polyline=;42.36254,
-71.08726,42.36297,-71.09364,42.36579,-71.09208,42.3697,
-71.102,42.37105,-71.10104,42.37067,-71.1001,42.36561,
-71.10406,42.36838,-71.10878,42.36968,-71.10703"
height="360" width="240">
</figure>
<section>
<div class="text-auto-size">
<p class="yellow">12 minutes to home</p><p>Medium traffic on Broadway</p>
</div>
</section>
</article>