screenshot_blocker_mario 1.0.0 copy "screenshot_blocker_mario: ^1.0.0" to clipboard
screenshot_blocker_mario: ^1.0.0 copied to clipboard

Flutter plugin que bloquea capturas de pantalla y grabaciones en iOS y Android usando FLAG_SECURE (Android) y capas seguras (iOS).

screenshot_blocker_mario #

Plugin de Flutter que bloquea capturas de pantalla y grabación de pantalla en iOS y Android, pensado para pantallas con datos sensibles (bancos, salud, enterprise).

Plataformas #

Plataforma Implementación
Android WindowManager.LayoutParams.FLAG_SECURE: impide screenshots y que el contenido aparezca en recientes/grabaciones.
iOS Capa segura (UITextField con isSecureTextEntry) sobre la ventana; las capturas/grabaciones no muestran el contenido real.

Instalación #

En tu pubspec.yaml:

dependencies:
  screenshot_blocker_mario:
    path: ../screenshot_blocker_mario   # si está en tu repo
  # o desde pub.dev cuando se publique:
  # screenshot_blocker_mario: ^1.0.0

Luego:

flutter pub get

Uso #

Activar / desactivar bloqueo #

import 'package:screenshot_blocker_mario/screenshot_blocker_mario.dart';

// Activar (pantalla protegida)
await ScreenshotBlocker.enable();

// Desactivar
await ScreenshotBlocker.disable();

// Consultar estado
final bool active = await ScreenshotBlocker.isEnabled();

Ejemplo por pantalla #

class SensitiveScreen extends StatefulWidget {
  @override
  State<SensitiveScreen> createState() => _SensitiveScreenState();
}

class _SensitiveScreenState extends State<SensitiveScreen> {
  @override
  void initState() {
    super.initState();
    ScreenshotBlocker.enable();
  }

  @override
  void dispose() {
    ScreenshotBlocker.disable();
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(child: Text('Contenido sensible')),
    );
  }
}

API #

Método Descripción
ScreenshotBlocker.enable() Activa el bloqueo de capturas y grabaciones.
ScreenshotBlocker.disable() Desactiva el bloqueo.
ScreenshotBlocker.isEnabled() Devuelve true si el bloqueo está activo.

Limitaciones #

  • Android: FLAG_SECURE es soportado por el sistema; en grabación o captura el contenido no se muestra.
  • iOS: No existe API pública para “bloquear” la captura; se usa una capa segura para que en screenshot/grabación no se vea el contenido. Puede no comportarse igual en simulador.
  • No evita grabación con cámara externa ni dispositivos rooteados/jailbreak.

Tests #

cd screenshot_blocker_mario
flutter test

Licencia #

BSD-3-Clause.

0
likes
140
points
13
downloads

Publisher

unverified uploader

Weekly Downloads

Flutter plugin que bloquea capturas de pantalla y grabaciones en iOS y Android usando FLAG_SECURE (Android) y capas seguras (iOS).

Repository (GitHub)
View/report issues

Documentation

Documentation
API reference

License

BSD-3-Clause (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on screenshot_blocker_mario

Packages that implement screenshot_blocker_mario