flutter_map_tile_caching 9.0.0-dev.7 copy "flutter_map_tile_caching: ^9.0.0-dev.7" to clipboard
flutter_map_tile_caching: ^9.0.0-dev.7 copied to clipboard

Plugin for 'flutter_map' providing advanced caching functionality, with ability to download map regions for offline use.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_map_tile_caching/flutter_map_tile_caching.dart';
import 'package:google_fonts/google_fonts.dart';
import 'package:provider/provider.dart';

import 'screens/configure_download/state/configure_download_provider.dart';
import 'screens/main/main.dart';
import 'screens/main/pages/downloading/state/downloading_provider.dart';
import 'screens/main/pages/map/state/map_provider.dart';
import 'screens/main/pages/region_selection/state/region_selection_provider.dart';
import 'shared/state/general_provider.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  SystemChrome.setSystemUIOverlayStyle(
    const SystemUiOverlayStyle(
      statusBarColor: Colors.transparent,
      statusBarIconBrightness: Brightness.dark,
    ),
  );

  // TODO: Implement error handling
  await FMTCObjectBoxBackend().initialise();

  runApp(const _AppContainer());
}

class _AppContainer extends StatelessWidget {
  const _AppContainer();

  @override
  Widget build(BuildContext context) => MultiProvider(
        providers: [
          ChangeNotifierProvider(create: (_) => GeneralProvider()),
          ChangeNotifierProvider(
            create: (_) => MapProvider(),
            lazy: true,
          ),
          ChangeNotifierProvider(
            create: (_) => RegionSelectionProvider(),
            lazy: true,
          ),
          ChangeNotifierProvider(
            create: (_) => ConfigureDownloadProvider(),
            lazy: true,
          ),
          ChangeNotifierProvider(
            create: (_) => DownloadingProvider(),
            lazy: true,
          ),
        ],
        child: MaterialApp(
          title: 'FMTC Demo',
          theme: ThemeData(
            brightness: Brightness.dark,
            useMaterial3: true,
            textTheme: GoogleFonts.ubuntuTextTheme(const TextTheme()),
            colorSchemeSeed: Colors.red,
            switchTheme: SwitchThemeData(
              thumbIcon: MaterialStateProperty.resolveWith(
                (states) => Icon(
                  states.contains(MaterialState.selected)
                      ? Icons.check
                      : Icons.close,
                ),
              ),
            ),
          ),
          debugShowCheckedModeBanner: false,
          home: const MainScreen(),
        ),
      );
}
102
likes
0
pub points
94%
popularity

Publisher

verified publisherjaffaketchup.dev

Plugin for 'flutter_map' providing advanced caching functionality, with ability to download map regions for offline use.

Repository (GitHub)
View/report issues

Topics

#flutter-map #map #fmtc

Documentation

Documentation

Funding

Consider supporting this project:

github.com

License

unknown (LICENSE)

Dependencies

async, collection, dart_earcut, flat_buffers, flutter, flutter_map, http, latlong2, meta, objectbox, objectbox_flutter_libs, path, path_provider

More

Packages that depend on flutter_map_tile_caching