Для безопасного запуска сеанса пошаговой навигации для водителя ваша серверная часть должна создать поездку и получить аутентифицированный токен поездки от API Navigation Connect.
В Navigation Connect поездка представляет собой сеанс навигации к одному пункту назначения. Чтобы создать поездку и получить аутентифицированный токен поездки ( authToken ), необходимый для авторизации сеанса, отправьте сообщение CreateTripRequest методу CreateTrip . Передайте токен поездки в ваше мобильное приложение, чтобы включить его в URL-адрес запуска Google Maps или Waze.
В этом руководстве описано, как выполнить этот процесс, сгенерировав уникальный идентификатор поездки и отправив запрос к API.
Сформируйте сообщение CreateTripRequest
Для создания поездки и получения токена поездки выполните следующие шаги, чтобы сформировать и отправить сообщение CreateTripRequest :
- Аутентификация : Используйте учетные данные приложения по умолчанию (ADC) для получения токена доступа, необходимого для авторизации вашего запроса. Дополнительные сведения см. в разделе «Создание токена OAuth» .
- Сгенерируйте идентификатор поездки : создайте уникальный идентификатор поездки (
tripId) в формате UUIDv4 для идентификации поездки на вашем сервере. - Создание полезной нагрузки : Создайте полезную нагрузку в формате JSON, которая включает идентификаторы вашего приложения и параметры конфигурации.
- Вызовите метод
CreateTrip: отправьте POST-запрос к API, указав токен доступа в заголовке и полезную нагрузку в теле запроса.
В следующем примере показано, как создать поездку, отправив сообщение CreateTripRequest :
#!/bin/bash
# Authenticate with ADC
access_token="$(gcloud auth application-default login --impersonate-service-account=SERVICE_ACCOUNT_EMAIL)"
# Generate a unique Trip ID
trip_id="$(uuidgen)"
# Construct the payload
payload=$(cat <<EOF
{
"androidAppId": "ANDROID_APP_ID",
"iosAppId": "IOS_APP_ID",
"config": {
"enablePubsub": true
}
}
EOF
)
# Call the CreateTrip method to request a trip token
curl -X POST "https://navigationconnect.googleapis.com/v1/projects/PROJECT_ID/trips?tripId=${trip_id}" \
-H "Authorization: Bearer ${access_token}" \
-H "Content-Type: application/json" \
-d "${payload}"
Дополнительные конфигурации
Вы можете настроить данные о поездке, изменив следующие параметры в сообщении CreateTripRequest :
| Особенность | Тип | Описание |
|---|---|---|
| Информация об оставшихся участках маршрута (только в Waze) | boolean | Чтобы получать информацию об активной полилинии маршрута и дорожной ситуации в реальном времени, установите |
| Частота обновления данных о поездках | boolean | По умолчанию Navigation Connect обновляет данные о поездках каждые 60 секунд. Чтобы включить более частые обновления (каждые 5 секунд), установите |
| Генерация событий Google Cloud Pub/Sub | boolean | Чтобы включить генерацию событий поездок с помощью Google Cloud Pub/Sub, установите |
| Маска поля Google Cloud Pub/Sub | FieldMask | Для управления размерами полезной нагрузки и снижения нагрузки на серверную часть или затрат на использование Google Cloud Pub/Sub используйте |
Получите токен поездки из ответа.
Метод CreateTrip возвращает ответ, содержащий токен авторизованной поездки. Для авторизации сеанса навигации извлеките этот токен из ответа и передайте его в ваше мобильное приложение, чтобы включить его в URL-адрес запуска.
Приведённый ниже пример кода демонстрирует образец ответа:
{
"name": "projects/PROJECT_NUMBER/trips/TRIP_ID",
"authToken": {
"token": "BASE64_ENCODED_TRIP_TOKEN",
"expireTime": "2026-03-06T11:09:47.476942Z"
},
"state": "NEW",
"execution": {
"traveledDistanceMeters": 0,
"stopAddedInRoute": false
},
"createTime": "2026-03-05T23:09:50.768959Z",
"updateTime": "2026-03-05T23:09:50.768959Z"
}
Данный ответ содержит следующие значения:
- PROJECT_NUMBER : Уникальный числовой идентификатор вашего проекта. Он отличается от буквенно-цифрового идентификатора проекта, но представляет собой тот же проект Google Cloud.
- TRIP_ID : Идентификатор поездки, сгенерированный вашей серверной частью в формате UUIDv4.
- BASE64_ENCODED_TRIP_TOKEN : Аутентифицированный токен поездки (
authToken.token), возвращаемый методомCreateTrip. Передайте этот токен в ваше мобильное приложение, чтобы запустить отслеживаемую пошаговую навигацию в Google Maps или Waze.
Что дальше?
Используйте токен поездки, чтобы запустить Google Maps или Waze.
Запустите Google Maps или Waze.