DEEPLINKX / app

Yandex Navigator

Yandex Navigator actions, setup, native platforms, and fallback options.

DeeplinkX 1.5.8 · Source

Platforms and setup

Native platforms: ios, android.

  • Provider requires access-key identification for requests passing coordinates/search/other data; without it requests may be rate-limited. Optional YandexNavigatorLaunchParams forwards client/signature; DeeplinkX does not sign URLs.

Public actions

YandexNavigator.open

factory YandexNavigator.open({final bool fallbackToStore = false})

Launch with DeeplinkX.launchApp. Native platforms: ios, android. Action web fallback: available. Store-fallback flag: supported; opt in explicitly.

ParameterTypeRequiredDefault
fallbackToStoreboolNofalse

Exact source

YandexNavigator.view

static YandexNavigatorViewAction view({ required final Coordinate coordinate, final int zoom = 18, final bool showBalloon = true, final String? description, final YandexNavigatorLaunchParams? launchParams, final bool fallbackToStore = false, })

Launch with DeeplinkX.launchAction. Native platforms: ios, android. Action web fallback: available. Store-fallback flag: supported; opt in explicitly.

ParameterTypeRequiredDefault
coordinateCoordinateYes—
zoomintNo18
showBalloonboolNotrue
descriptionString?No—
launchParamsYandexNavigatorLaunchParams?No—
fallbackToStoreboolNofalse

Exact source

static YandexNavigatorSearchAction search({ required final String query, final YandexNavigatorLaunchParams? launchParams, final bool fallbackToStore = false, })

Launch with DeeplinkX.launchAction. Native platforms: ios, android. Action web fallback: available. Store-fallback flag: supported; opt in explicitly.

ParameterTypeRequiredDefault
queryStringYes—
launchParamsYandexNavigatorLaunchParams?No—
fallbackToStoreboolNofalse

Exact source

YandexNavigator.directionsWithCoords

static YandexNavigatorDirectionsWithCoordsAction directionsWithCoords({ required final Coordinate destination, final Coordinate? origin, final List<YandexNavigatorWaypoint> waypoints = const [], final YandexNavigatorLaunchParams? launchParams, final bool fallbackToStore = false, })

Launch with DeeplinkX.launchAction. Native platforms: ios, android. Action web fallback: available. Store-fallback flag: supported; opt in explicitly.

ParameterTypeRequiredDefault
destinationCoordinateYes—
originCoordinate?No—
waypointsList<YandexNavigatorWaypoint>Noconst []
launchParamsYandexNavigatorLaunchParams?No—
fallbackToStoreboolNofalse

Exact source

Provider setup and examples

DeeplinkX supports the Yandex Navigator custom URI scheme on iOS and Android for opening the app, showing a point, searching, and building coordinate routes.

References

Available Actions

Launch Yandex Navigator

final deeplinkX = DeeplinkX();
await deeplinkX.launchApp(YandexNavigator.open());

View Map

await deeplinkX.launchAction(
  YandexNavigator.view(
    coordinate: const Coordinate(latitude: 55.753716, longitude: 37.619902),
    zoom: 16,
    description: 'Red Square',
  ),
);
await deeplinkX.launchAction(
  YandexNavigator.search(query: 'gas station'),
);

Directions With Coordinates

await deeplinkX.launchAction(
  YandexNavigator.directionsWithCoords(
    origin: const Coordinate(latitude: 55.753716, longitude: 37.619902),
    destination: const Coordinate(latitude: 55.76009, longitude: 37.648801),
    waypoints: const [
      YandexNavigatorWaypoint(
        coordinate: Coordinate(latitude: 55.745719, longitude: 37.604337),
      ),
    ],
  ),
);

Yandex Navigator route URLs are coordinate based, so DeeplinkX does not expose a text-only directions action for this app.

Commercial Launch Parameters

If your Yandex integration requires commercial identification, pass the optional client and signature query parameters:

await deeplinkX.launchAction(
  YandexNavigator.search(
    query: 'airport',
    launchParams: const YandexNavigatorLaunchParams(
      client: 'client-id',
      signature: 'signed-url-value',
    ),
  ),
);

Yandex requires access-key identification when coordinates, search terms, or other data are passed to Navigator. Without it, launches can be rate-limited. DeeplinkX forwards client and signature; it does not generate signatures.

Platform Configuration

iOS

Add the Yandex Navigator scheme to the LSApplicationQueriesSchemes array in ios/Runner/Info.plist:

<string>yandexnavi</string>

Android

Allow querying the package in android/app/src/main/AndroidManifest.xml:

<queries>
  <package android:name="ru.yandex.yandexnavi" />
  <intent>
    <action android:name="android.intent.action.VIEW" />
    <data android:scheme="yandexnavi" />
  </intent>
</queries>

URI Formats

  • View map: yandexnavi://show_point_on_map?lat={latitude}&lon={longitude}&zoom={zoom}&no-balloon={0|1}&desc={description?}
  • Search: yandexnavi://map_search?text={query}
  • Directions with coordinates: yandexnavi://build_route_on_map?lat_from={originLatitude?}&lon_from={originLongitude?}&lat_to={destinationLatitude}&lon_to={destinationLongitude}&lat_via_0={waypointLatitude?}&lon_via_0={waypointLongitude?}

Fallback Behavior

  1. DeeplinkX opens the native app when installed.
  2. If the app is missing and fallbackToStore is true, we redirect to the appropriate store listing.
  3. Otherwise DeeplinkX opens the matching Yandex Maps web action:
    • View with a marker: https://yandex.com/maps/?pt={longitude},{latitude}&z={zoom}&l=map
    • View without a marker: https://yandex.com/maps/?ll={longitude},{latitude}&z={zoom}&l=map
    • Search: https://yandex.com/maps/?text={query}&l=map
    • Directions: https://yandex.com/maps/?rtext={origin?}~{waypoints...}~{destination}&rtt=auto
  4. Set disableFallback: true when calling launchAction to skip both store and web fallbacks.

Placemark URLs use longitude,latitude. Route URLs use latitude,longitude. When the route origin is omitted, the web URL starts rtext with ~ so Yandex Maps uses the current location. Native-only parameters such as client, signature, description, and no-balloon are not copied into web URLs.

Fallback Support Matrix

ActionStore FallbackWeb Fallback
Open app✔️✔️ (website)
View map✔️✔️
Search✔️✔️
Directions with coordinates✔️✔️