DEEPLINKX / app

TMAP

TMAP actions, setup, native platforms, and fallback options.

DeeplinkX 1.5.8 · Source

Platforms and setup

Native platforms: ios, android.

Public actions

TMap.open

factory TMap.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

TMap.view

static TMapViewAction view({ required final Coordinate coordinate, final String? title, 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—
titleString?No—
fallbackToStoreboolNofalse

Exact source

TMap.directionsWithCoords

static TMapDirectionsWithCoordsAction directionsWithCoords({ required final Coordinate destination, final Coordinate? origin, final String? destinationTitle, final String? originTitle, 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—
destinationTitleString?No—
originTitleString?No—
fallbackToStoreboolNofalse

Exact source

Provider setup and examples

DeeplinkX supports TMAP's tmap URI scheme so Flutter apps can open map locations or launch coordinate-based directions in the native TMAP app on iOS and Android.

References

Available Actions

Launch TMAP

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

View Map

await deeplinkX.launchAction(
  TMap.view(
    coordinate: const Coordinate(latitude: 37.5665, longitude: 126.9780),
    title: 'Seoul City Hall',
  ),
);

Directions With Coordinates

await deeplinkX.launchAction(
  TMap.directionsWithCoords(
    origin: const Coordinate(latitude: 37.5665, longitude: 126.9780),
    originTitle: 'City Hall',
    destination: const Coordinate(latitude: 37.5547, longitude: 126.9706),
    destinationTitle: 'Seoul Station',
  ),
);

Omit origin to let TMAP start from the user's current location. originTitle is ignored unless origin is provided.

Platform Configuration

iOS

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

<string>tmap</string>

Android

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

<queries>
  <package android:name="com.skt.tmap.ku" />
</queries>

URI Formats

  • View map: tmap://viewmap?name={title}&x={longitude}&y={latitude}
  • Directions: tmap://route?startname={originTitle}&startx={originLongitude}&starty={originLatitude}&goalname={destinationTitle}&goaly={destinationLatitude}&goalx={destinationLongitude}&carType=1

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 the action falls back to https://www.tmap.co.kr/.
  4. Set disableFallback: true when calling launchAction to skip both store and web fallbacks.

Fallback Support Matrix

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