mlms_load 0.8.3 copy "mlms_load: ^0.8.3" to clipboard
mlms_load: ^0.8.3 copied to clipboard

PlatformiOS

A Flutter plugin for improved app loading and synchronization management.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart';
import 'package:mlms_load/mlms_load.dart';

final _router = GoRouter(
  routes: [
    GoRoute(
      path: '/',
      builder: (context, state) => const HomeScreen(),
    ),
    GoRoute(
      path: '/details/:id',
      builder: (context, state) => DetailsScreen(
        id: state.pathParameters['id']!,
      ),
    ),
    GoRoute(
      path: '/settings',
      builder: (context, state) => const SettingsScreen(),
    ),
  ],
);

void main() {
  runApp(
    MlmsLoadApp(
      splashBackgroundImage: const AssetImage('assets/splash_bg.png'),
      splashScreen: const MaterialApp(
        home: Scaffold(
          backgroundColor: Colors.transparent,
          body: Center(
            child: CircularProgressIndicator(color: Colors.white),
          ),
        ),
      ),
      mainScreen: MaterialApp.router(
        routerConfig: _router,
      ),
      responseHeaderKey: 'YOUR_RESPONSE_HEADER_KEY',
      synchronizationUrl: 'https://your-sync-url.com',
    ),
  );
}

class HomeScreen extends StatelessWidget {
  const HomeScreen({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Plugin example app'),
      ),
      body: ListView(
        children: [
          ListTile(
            leading: const Icon(Icons.info_outline),
            title: const Text('Details Item 1'),
            onTap: () => context.go('/details/1'),
          ),
          ListTile(
            leading: const Icon(Icons.info_outline),
            title: const Text('Details Item 2'),
            onTap: () => context.go('/details/2'),
          ),
          ListTile(
            leading: const Icon(Icons.info_outline),
            title: const Text('Details Item 3'),
            onTap: () => context.go('/details/3'),
          ),
          ListTile(
            leading: const Icon(Icons.settings),
            title: const Text('Settings'),
            onTap: () => context.go('/settings'),
          ),
        ],
      ),
    );
  }
}

class DetailsScreen extends StatelessWidget {
  final String id;

  const DetailsScreen({super.key, required this.id});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Details #$id'),
        leading: IconButton(
          icon: const Icon(Icons.arrow_back),
          onPressed: () => context.go('/'),
        ),
      ),
      body: Center(
        child: Text(
          'Details screen for item $id',
          style: Theme.of(context).textTheme.headlineSmall,
        ),
      ),
    );
  }
}

class SettingsScreen extends StatelessWidget {
  const SettingsScreen({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Settings'),
        leading: IconButton(
          icon: const Icon(Icons.arrow_back),
          onPressed: () => context.go('/'),
        ),
      ),
      body: ListView(
        children: [
          SwitchListTile(
            title: const Text('Notifications'),
            subtitle: const Text('Enable push notifications'),
            value: false,
            onChanged: (_) {},
          ),
          SwitchListTile(
            title: const Text('Dark mode'),
            subtitle: const Text('Enable dark theme'),
            value: false,
            onChanged: (_) {},
          ),
        ],
      ),
    );
  }
}
0
likes
120
points
120
downloads

Publisher

unverified uploader

Weekly Downloads

A Flutter plugin for improved app loading and synchronization management.

Documentation

API reference

License

MIT (license)

Dependencies

device_info_plus, flutter, http, plugin_platform_interface, shared_preferences, url_launcher, uuid

More

Packages that depend on mlms_load

Packages that implement mlms_load