flutter_screensharing_restrict 0.0.4 copy "flutter_screensharing_restrict: ^0.0.4" to clipboard
flutter_screensharing_restrict: ^0.0.4 copied to clipboard

A Flutter plugin to do something amazing.

Flutter Screensharing Restrict #

A Flutter plugin to check if specific screen-sharing apps are installed on the user's device and restrict app usage if any of these apps are found. This can help ensure that your app is not running in environments where screen-sharing apps may compromise its security.

Features #

  • Detects the presence of common screen-sharing apps such as Zoom, Google Meet, Skype, Telegram, and more.
  • Provides a method to restrict app functionality if any of these apps are installed.
  • Supports both Android and iOS platforms.

Installation #

Add the plugin to your Flutter project's pubspec.yaml file:

dependencies:
  flutter_screen_sharing: ^0.0.4

Then run the following command in your terminal to fetch the plugin:

flutter pub get

Usage #

To use this plugin, you need to call the isScreenSharingRestricted method. This method will return a bool indicating whether any screen-sharing apps are installed on the device. If the method returns true, you can restrict certain functionalities in your app.

Example #

import 'package:flutter/material.dart';
import 'package:flutter_screen_sharing/flutter_screen_sharing.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text('Screen Sharing Restriction'),
        ),
        body: Center(
          child: FutureBuilder<bool>(
            future: ScreenSharingRestriction.isScreenSharingRestricted(),
            builder: (context, snapshot) {
              if (snapshot.connectionState == ConnectionState.waiting) {
                return CircularProgressIndicator();
              }

              if (snapshot.hasError) {
                return Text('Error: ${snapshot.error}');
              }

              return Text(
                snapshot.data == true
                    ? 'Screen sharing is restricted.'
                    : 'No screen-sharing apps detected.',
                style: TextStyle(fontSize: 20),
              );
            },
          ),
        ),
      ),
    );
  }
}

Checking for Installed Screen Sharing Apps #

This plugin checks for common screen-sharing apps such as:

  • Zoom (us.zoom.videomeetings)
  • Google Meet (com.google.android.apps.meetings)
  • Skype (com.skype.raider)
  • Telegram (org.telegram.messenger)

If any of these apps are found, the isScreenSharingRestricted() method will return true.

Android Setup #

No additional setup is required for Android. The plugin checks the installed packages on the device using the Android package manager.

iOS Setup #

Ensure that the following URL schemes are added to the ios/Runner/Info.plist to check if these apps are installed on iOS:

<key>LSApplicationQueriesSchemes</key>
<array>
    <string>zoomus</string>
    <string>googlesmeet</string>
    <string>skype</string>
    <string>telegram</string>
</array>

Methods #

  • isScreenSharingRestricted(): Returns a Future<bool> indicating whether any screen-sharing apps are installed on the device.

Contributing #

Feel free to contribute by submitting issues or pull requests.

License #

This project is licensed under the MIT License. See the LICENSE file for details.

5
likes
140
points
21
downloads

Publisher

unverified uploader

Weekly Downloads

A Flutter plugin to do something amazing.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on flutter_screensharing_restrict