maps 0.4.0

Flutter iOS

A cross-platform geographic maps package. Supports Apple MapKit, Bing Maps, and Google Maps. Works in all platforms supported by Flutter, including browsers.

Pub Package Github Actions CI

Overview #

Cross-platform geographic maps for Flutter applications.

This is an early version and lots of things are still missing or broken.

Pull requests are welcome! The package is licensed under the Apache License 2.0.

Getting started #

1.Add dependency #

In pubspec.yaml:

dependencies:
  maps: ^0.4.0

Add the following in ios/Runner/Info.plist:

	<key>io.flutter.embedded_views_preview</key>
	<true/>

2.Use #

Launching external application? #

MapLauncher launches map applications.

The following implementations are available:

import 'package:maps/maps.dart';

Future<void> main() async {
  // Use default map app
  await MapAppLauncher.defaultInstance.launch(
    query: 'Paris',
  );
}

Rendering a map? #

MapWidget shows a map. It fills all space available to it.

import 'package:flutter/material.dart';
import 'package:maps/maps.dart';

void main() {
  // Set default adapter
  MapAdapter.defaultInstance = MapAdapter.platformSpecific(
    ios: AppleNativeAdapter(),

    // Bing Maps iframe API does not necessarily require API credentials
    // so we use it in the example.
    otherwise: BingMapsIframeAdapter(),
  );

  // Construct a map widget
  const parisMap = MapWidget(
    location: MapLocation(
      query: 'Paris',
    ),
    markers: [
      MapMarker(
        query: 'Eiffel Tower',
      ),
    ],
  );

  // Run our example app
  runApp(const MaterialApp(
    home: Scaffold(
      body: SafeArea(
        child: parisMap, // Full-screen map of Paris
      ),
    ),
  ));
}

Assuming that you have enabled Flutter for Web, you can run:

flutter run -d chrome

Supported map providers #

Apple Maps APIs #

iOS #

Javascript #

Images #

Bing Maps APIs #

Javascript #

Iframes #

Images #

Google Maps APIs #

Android / iOS native SDK #

Use the separate package maps_adapter_google_maps.

Javascript #

Iframes #

Images #

Contributing? #

  • Pull requests are welcome.
  • Please test your changes manually using the "example" application in the repository.
14
likes
70
pub points
73%
popularity

Publisher

dint.dev

A cross-platform geographic maps package. Supports Apple MapKit, Bing Maps, and Google Maps. Works in all platforms supported by Flutter, including browsers.

Repository (GitHub)
View/report issues

Documentation

API reference

License

Apache 2.0 (LICENSE)

Dependencies

apple_maps_flutter, collection, cryptography_flutter, database, flutter, js, meta, url_launcher, web_browser

More

Packages that depend on maps