user_tracking_plugin 0.0.1 copy "user_tracking_plugin: ^0.0.1" to clipboard
user_tracking_plugin: ^0.0.1 copied to clipboard

A flutter plugin to send user's current screen to a socket.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:user_tracking_plugin/user_tracking_plugin.dart';
import 'package:user_tracking_plugin_example/screen2.dart';
import 'package:user_tracking_plugin_example/screen3.dart';
import 'package:user_tracking_plugin_example/screen4.dart';

void main() => runApp(MyApp());
final RouteObserver<PageRoute> routeObserver = RouteObserver<PageRoute>();

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    SetSocketUrl(socketLink: "wss://echo.websocket.events", child: Screen1(),);
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      theme: ThemeData(),
      navigatorObservers: [routeObserver],
      home: RouteAwareWidget(routeObserver, 'screen1', child: Screen1()),
      routes: {
        'screen2': (context) => RouteAwareWidget(routeObserver, 'screen2', child: Screen2()),
        'screen3': (context) => RouteAwareWidget(routeObserver, 'screen3', child: Screen3()),
        'screen4': (context) => RouteAwareWidget(routeObserver, 'screen4', child: Screen4()),
      },
    );
  }
}

class Screen1 extends StatelessWidget {

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            Text('Screen 1'),
            SizedBox(height: 30.0),
            ElevatedButton(
              child: Text('Screen 2'),
              onPressed: () => Navigator.of(context).pushNamed('screen2'),
            ),
            ElevatedButton(
              child: Text('Screen 3'),
              onPressed: () => Navigator.of(context).pushNamed('screen3'),
            ),
            ElevatedButton(
              child: Text('Screen 4'),
              onPressed: () => Navigator.of(context).pushNamed('screen4'),
            ),
          ],
        ),
      ),
    );
  }
}
2
likes
120
points
0
downloads

Publisher

unverified uploader

Weekly Downloads

A flutter plugin to send user's current screen to a socket.

Homepage

Documentation

API reference

License

unknown (license)

Dependencies

flutter, plugin_platform_interface, web_socket_channel

More

Packages that depend on user_tracking_plugin

Packages that implement user_tracking_plugin