uni_overlay_log 0.1.5 copy "uni_overlay_log: ^0.1.5" to clipboard
uni_overlay_log: ^0.1.5 copied to clipboard

Console de logs embutido e arrastável para Flutter Web/Mobile/Desktop, com captura de prints/erros e hotkey.

example/lib/main.dart

import 'dart:async';
import 'package:flutter/foundation.dart' show kIsWeb, kDebugMode, defaultTargetPlatform, TargetPlatform;
import 'package:flutter/material.dart';
import 'package:uni_overlay_log/uni_overlay_log.dart';

void main() {
  runZonedGuarded(() {
    WidgetsFlutterBinding.ensureInitialized();

    // Inicia captura de logs/erros
    UniOverlayLog.I.init(capturePrints: true);

    final visibility = UniOverlayVisibility(initial: true);

    final enableHotkeys = kIsWeb ||
        defaultTargetPlatform == TargetPlatform.macOS ||
        defaultTargetPlatform == TargetPlatform.linux ||
        defaultTargetPlatform == TargetPlatform.windows;

    runApp(
      UniOverlayShortcuts(
        enabled: enableHotkeys,
        controller: visibility,
        child: MaterialApp(
          debugShowCheckedModeBanner: false,
          builder: (context, child) => uniOverlayAppBuilder(
            context: context,
            child: child,
            isWeb: kIsWeb,
            visibility: visibility,
          ),
          home: const DemoPage(),
        ),
      ),
    );
  }, (error, stack) {
    Log.e('Erro não tratado', stack);
    if (kDebugMode) {
      // rethrow;
    }
  });
}

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

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: const Text('uni_overlay_log example')),
      body: Center(
        child: Column(
          mainAxisSize: MainAxisSize.min,
          children: [
            ElevatedButton(
              onPressed: () => Log.i('Cliquei no Log.i'),
              child: const Text('Log.i'),
            ),
            const SizedBox(height: 12),
            ElevatedButton(
              onPressed: () {
                try { throw Exception('Erro de teste'); }
                catch (e, s) { Log.e(e, s); }
              },
              child: const Text('Log.e'),
            ),
          ],
        ),
      ),
    );
  }
}
0
likes
145
points
96
downloads

Publisher

unverified uploader

Weekly Downloads

Console de logs embutido e arrastável para Flutter Web/Mobile/Desktop, com captura de prints/erros e hotkey.

Repository (GitHub)
View/report issues

Topics

#logging #debug #overlay #console #web

Documentation

API reference

License

MIT (license)

Dependencies

flutter

More

Packages that depend on uni_overlay_log