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.
| Parameter | Type | Required | Default |
|---|---|---|---|
fallbackToStore | bool | No | false |
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.
| Parameter | Type | Required | Default |
|---|---|---|---|
coordinate | Coordinate | Yes | — |
title | String? | No | — |
fallbackToStore | bool | No | false |
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.
| Parameter | Type | Required | Default |
|---|---|---|---|
destination | Coordinate | Yes | — |
origin | Coordinate? | No | — |
destinationTitle | String? | No | — |
originTitle | String? | No | — |
fallbackToStore | bool | No | false |
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
- TMAP developer center: https://tmapapi.tmapmobility.com/
- Google Play listing: https://play.google.com/store/apps/details?id=com.skt.tmap.ku
- App Store listing: https://apps.apple.com/us/app/id431589174
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
- DeeplinkX opens the native app when installed.
- If the app is missing and
fallbackToStoreistrue, we redirect to the appropriate store listing. - Otherwise the action falls back to
https://www.tmap.co.kr/. - Set
disableFallback: truewhen callinglaunchActionto skip both store and web fallbacks.
Fallback Support Matrix
| Action | Store Fallback | Web Fallback |
|---|---|---|
| Open app | ✔️ | ✔️ (website) |
| View map | ✔️ | ✔️ |
| Directions with coordinates | ✔️ | ✔️ |