From 6626de94be7e25672ed8012236ab176731ae5ba3 Mon Sep 17 00:00:00 2001 From: bytedream Date: Tue, 26 Mar 2024 21:25:38 +0100 Subject: [PATCH] added map --- android/app/build.gradle | 1 + lib/view/map.dart | 24 ++++++++- pubspec.lock | 106 ++++++++++++++++++++++++++++++++++++++- pubspec.yaml | 3 ++ 4 files changed, 132 insertions(+), 2 deletions(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index 6c98d5f..a69cf3c 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -49,6 +49,7 @@ android { targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName + multiDexEnabled true } buildTypes { diff --git a/lib/view/map.dart b/lib/view/map.dart index b665ef3..9ccc0af 100644 --- a/lib/view/map.dart +++ b/lib/view/map.dart @@ -1,4 +1,8 @@ import 'package:flutter/material.dart'; +import 'package:flutter_map/flutter_map.dart'; +import 'package:http/http.dart'; +import 'package:http/retry.dart'; +import 'package:latlong2/latlong.dart'; class MapView extends StatefulWidget { const MapView({super.key}); @@ -10,6 +14,24 @@ class MapView extends StatefulWidget { class _MapViewState extends State { @override Widget build(BuildContext context) { - return const Placeholder(); + return FlutterMap( + options: const MapOptions( + initialCenter: LatLng(50.354, 7.5845), + initialZoom: 16, + ), + children: [ + TileLayer( + urlTemplate: 'https://tile.openstreetmap.org/{z}/{x}/{y}.png', + ), + TileLayer( + urlTemplate: "https://bubatzkarte.de/tiles/radius/100/{z}/{x}/{y}.png", + tileProvider: NetworkTileProvider( + httpClient: RetryClient( + Client(), + when: (response) => response.statusCode == 502) + ), + ) + ], + ); } } diff --git a/pubspec.lock b/pubspec.lock index aea0151..0c6de39 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -142,6 +142,14 @@ packages: url: "https://pub.dev" source: hosted version: "3.0.1" + flutter_map: + dependency: "direct main" + description: + name: flutter_map + sha256: cda8d72135b697f519287258b5294a57ce2f2a5ebf234f0e406aad4dc14c9399 + url: "https://pub.dev" + source: hosted + version: "6.1.0" flutter_native_splash: dependency: "direct main" description: @@ -168,6 +176,22 @@ packages: url: "https://pub.dev" source: hosted version: "0.15.4" + http: + dependency: "direct main" + description: + name: http + sha256: "761a297c042deedc1ffbb156d6e2af13886bb305c2a343a4d972504cd67dd938" + url: "https://pub.dev" + source: hosted + version: "1.2.1" + http_parser: + dependency: transitive + description: + name: http_parser + sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" + url: "https://pub.dev" + source: hosted + version: "4.0.2" image: dependency: transitive description: @@ -176,6 +200,14 @@ packages: url: "https://pub.dev" source: hosted version: "4.1.7" + intl: + dependency: transitive + description: + name: intl + sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf + url: "https://pub.dev" + source: hosted + version: "0.19.0" js: dependency: transitive description: @@ -192,6 +224,14 @@ packages: url: "https://pub.dev" source: hosted version: "4.8.1" + latlong2: + dependency: "direct main" + description: + name: latlong2 + sha256: "18712164760cee655bc790122b0fd8f3d5b3c36da2cb7bf94b68a197fbb0811b" + url: "https://pub.dev" + source: hosted + version: "0.9.0" leak_tracker: dependency: transitive description: @@ -224,6 +264,22 @@ packages: url: "https://pub.dev" source: hosted version: "3.0.0" + lists: + dependency: transitive + description: + name: lists + sha256: "4ca5c19ae4350de036a7e996cdd1ee39c93ac0a2b840f4915459b7d0a7d4ab27" + url: "https://pub.dev" + source: hosted + version: "1.0.1" + logger: + dependency: transitive + description: + name: logger + sha256: "8c94b8c219e7e50194efc8771cd0e9f10807d8d3e219af473d89b06cc2ee4e04" + url: "https://pub.dev" + source: hosted + version: "2.2.0" matcher: dependency: transitive description: @@ -248,6 +304,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.11.0" + mgrs_dart: + dependency: transitive + description: + name: mgrs_dart + sha256: fb89ae62f05fa0bb90f70c31fc870bcbcfd516c843fb554452ab3396f78586f7 + url: "https://pub.dev" + source: hosted + version: "2.0.0" nested: dependency: transitive description: @@ -280,6 +344,22 @@ packages: url: "https://pub.dev" source: hosted version: "3.7.4" + polylabel: + dependency: transitive + description: + name: polylabel + sha256: "41b9099afb2aa6c1730bdd8a0fab1400d287694ec7615dd8516935fa3144214b" + url: "https://pub.dev" + source: hosted + version: "1.0.1" + proj4dart: + dependency: transitive + description: + name: proj4dart + sha256: c8a659ac9b6864aa47c171e78d41bbe6f5e1d7bd790a5814249e6b68bc44324e + url: "https://pub.dev" + source: hosted + version: "2.1.0" provider: dependency: "direct main" description: @@ -349,6 +429,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.3.2" + unicode: + dependency: transitive + description: + name: unicode + sha256: "0f69e46593d65245774d4f17125c6084d2c20b4e473a983f6e21b7d7762218f1" + url: "https://pub.dev" + source: hosted + version: "0.3.1" universal_io: dependency: transitive description: @@ -373,6 +461,22 @@ packages: url: "https://pub.dev" source: hosted version: "13.0.0" + web: + dependency: transitive + description: + name: web + sha256: "97da13628db363c635202ad97068d47c5b8aa555808e7a9411963c533b449b27" + url: "https://pub.dev" + source: hosted + version: "0.5.1" + wkt_parser: + dependency: transitive + description: + name: wkt_parser + sha256: "8a555fc60de3116c00aad67891bcab20f81a958e4219cc106e3c037aa3937f13" + url: "https://pub.dev" + source: hosted + version: "2.0.0" xml: dependency: transitive description: @@ -391,4 +495,4 @@ packages: version: "3.1.2" sdks: dart: ">=3.3.2 <4.0.0" - flutter: ">=2.5.0" + flutter: ">=3.10.0" diff --git a/pubspec.yaml b/pubspec.yaml index d362ab7..87f7bf8 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -38,6 +38,9 @@ dependencies: flutter_native_splash: ^2.4.0 provider: ^6.1.2 flutter_launcher_icons: ^0.13.1 + flutter_map: ^6.1.0 + latlong2: ^0.9.0 + http: ^1.2.1 dev_dependencies: flutter_test: