What's Changed
- v5: add support for desktop and web platforms, universal links and store urls by @mattermoran in #224
Breaking Changes
MapLauncher.showMarker()/showDirections()→MapLauncher.marker(...).show()/.directions(...).show(). Methods onAvailableMapare gone.AvailableMap→SupportedMap. Name and icon moved toMapType.displayName/MapType.icon.SupportedMaponly pairs aMapTypewithisInstalled.Coords→LocationCoords:Coords(latitude, longitude)→.coords(lat, lng, title: '...'). Title moved into the location.Waypointremoved. UseLocationCoordsdirectly.DirectionsMode→TravelMode.extraParams→extra: accepts typed extras (GoogleExtra,AppleExtra, etc.) or rawMap<String, String>.MapTypeenum reordered, now carriesdisplayName,playStoreId,appStoreId,hasUniversalLink,icon.getAvailableMaps()returnsList<SupportedMap>instead ofList<AvailableMap>.isMapAvailable()removed. UsegetSupportedMaps()on a request.- Minimum SDK: Dart 3.11+, Flutter 3.3+.
New Features
- Desktop & web support (macOS, Windows, Linux, web) via universal links.
- Scheme-to-universal fallback when native app isn't installed.
- Search-based markers and directions (Google, Apple).
- URL inspection:
getUrl(),getUniversalUrl(),getSchemeUrl(). - Typed extras:
GoogleExtra,AppleExtra,WazeExtra,TencentExtra,YandexNaviExtra. getSupportedMaps()— per-request discovery that respects capabilities.- Store URLs:
MapType.appStoreUrl/MapType.playStoreUrl. MapLaunchExceptionwith URL and cause.
Docs
- Added
CONTRIBUTING.mdfor adding new map providers.
Full Changelog: v4.6.0...v5.0.0